· 6 years ago · Oct 28, 2019, 10:02 AM
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2<html>
3 <head>
4 <meta name="viewport" content="width=default-width; user-scalable=no" />
5 <meta http-equiv="Content-type" content="text/html;charset=utf-8">
6 <title>Samochody</title>
7 <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
8 <script type="text/javascript" charset="utf-8" src="jquery.min.js"></script>
9 <script type="text/javascript" charset="utf-8">
10var db;
11var shortName = 'BazaFX3';
12var version = '1.0';
13var displayName = 'BazaFX3';
14var maxSize = 65535;
15
16// wywoływana kiedy pojawi się błąd w połączeniu do bazy:
17function errorHandler(transaction, error) {
18 alert('Błąd: ' + error.message + ' kod błędu: ' + error.code);
19}
20
21// Funkcja wywoływana po udanej transakcji z bazą
22function successCallBack() {
23 alert("Debuger: sukces!");
24}
25
26function nullHandler(){};
27
28//Funkcja wywoływana po starcie apki
29$(document).ready(function() {
30 if (!window.openDatabase) {
31 alert('Twoje urządzenie nie obsługuje SQLite!');
32 return;
33 }
34 db = openDatabase(shortName, version, displayName,maxSize); //tworzy połączenie z bazą
35 db.transaction(function(tx){ //wykonuje SQL
36 //tx.executeSql( 'DROP TABLE User',nullHandler,nullHandler);
37 tx.executeSql( 'CREATE TABLE IF NOT EXISTS User(UserId INTEGER NOT NULL PRIMARY KEY, marka TEXT NOT NULL, model TEXT NOT NULL , kolor TEXT NOT NULL, rocznik TEXT NOT NULL, cena TEXT NOT NULL)',[],nullHandler,errorHandler);},errorHandler,successCallBack);
38});
39
40function ListDBValues() {
41 if (!window.openDatabase) {
42 alert('To urządzenie nie obsługuje SQLite!');
43 return;
44 }
45 $('#lbUsers').html(''); //wyczyszczenie wcześniejszej zawartości
46 db.transaction(function(transaction) {
47 transaction.executeSql('SELECT * FROM User;', [],
48 function(transaction, result) {
49 if (result != null && result.rows != null) {
50 for (var i = 0; i < result.rows.length; i++) {
51 var row = result.rows.item(i);
52 $('#lbUsers').append('<br>' + row.UserId + '. ' +row.marka+ '. ' + row.model+ '. ' + row.kolor+ '. ' + row.rocznik+ '. ' + row.cena);
53 }
54 }
55 },errorHandler);
56 },errorHandler,nullHandler);
57 return;
58}
59
60function AddValueToDB() {
61 if (!window.openDatabase) {
62 alert('To urządzenie nie obsługuje SQLite!');
63 return;
64 }
65
66 db.transaction(function(transaction) {
67 transaction.executeSql('INSERT INTO User(marka, model, kolor, rocznik, cena) VALUES (?,?,?,?,?)',[$('#marka').val(), $('#model').val(), $('#kolor').val(), $('#rocznik').val(), $('#cena').val()],
68 nullHandler,errorHandler);
69 });
70 ListDBValues();
71 return false;
72}
73</script>
74</head>
75<body>
76 <h1>Samochody</h1>
77 <input id="marka" type="text" placeholder="Marka"><br>
78 <input id="model" type="text" placeholder="Model"><br>
79 <input id="kolor" type="text" placeholder="Kolor"><br>
80 <input id="rocznik" type="int" placeholder="Rocznik"><br>
81 <input id="cena" type="double" placeholder="Cena"><br>
82 <input type="button" value="Dodaj do bazy" onClick="AddValueToDB()"><br>
83 <input type="button" value="Odśwież" onClick="ListDBValues()"><br>
84 <br>
85 <span style="font-weight:bold;">Wartości zapisane w bazie:</span>
86 <span id="lbUsers"></span>
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125 </body>
126</html>