· 8 years ago · Jun 19, 2018, 05:52 AM
1// ----------
2// Send the index.html's form
3// ----------
4function saveForm() {
5
6 // ---- Local variables
7 var errors;
8 var allStringElements;
9 var i;
10
11 errors = 0;
12 allStringElements = new Array();
13 allStringElements = $$('input[type=text]');
14
15 // ---- All fields should be completed
16 for (i = 0; i < allStringElements.length; i++) {
17
18 if(allStringElements[i].get('value') == '') {
19 errors++;
20 }
21
22 }
23
24 // ---- Phone field should be "phone number formated"
25 if ( !isPhoneNumber($('phone').get('value')) ) {
26 errors++;
27 }
28
29 // ---- Mail field should contain a "@"
30 if ( !isMailAdress($('mail').get('value')) ) {
31 errors++;
32 }
33
34 // -- For debug
35 //alert('Errors : ' + errors);
36
37 // No error -> save the data in SQLite database
38 if(errors == 0) {
39
40 var mystring = "Last name : " + $('lastName').get('value') + "\n" +
41 "First name : " + $('firstName').get('value') + "\n" +
42 "Street : " + $('street').get('value') + "\n" +
43 "City : " + $('city').get('value') + "\n" +
44 "Phone number : " + $('phone').get('value') + "\n" +
45 "e-Mail : " + $('mail').get('value') + "\n";
46
47 if (!window.openDatabase) {
48
49 alert('Not supported');
50
51 } else {
52
53 var shortName = 'mydatabase2';
54 var version = '1.0';
55 var displayName = 'My Important Database';
56 var maxSize = 65536; // in bytes
57 var mydb = openDatabase(shortName, version, displayName, maxSize);
58
59
60 function nullDataHandler(transaction, results) { }
61
62 function errorHandler(transaction, error) {
63
64 // Error is a human-readable string.
65 alert('Oops. Error was '+error.message+' (Code '+error.code+')');
66
67 // Handle errors here
68 var we_think_this_error_is_fatal = true;
69
70 if (we_think_this_error_is_fatal) return true;
71
72 return false;
73 }
74
75 function createTables(db)
76 {
77
78 db.transaction(
79
80 function (transaction) {
81 alert('start create table');
82
83 /* The first query causes the transaction to (intentionally) fail if the table exists. */
84 transaction.executeSql('CREATE TABLE people(id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, lastName TEXT, firstName TEXT, street TEXT, city TEXT, phone TEXT, mail TEXT);', [], nullDataHandler, errorHandler);
85
86 alert('executeSql passed');
87
88 });
89 }
90
91 var systemdb = mydb;
92
93 //var mydb = openDatabase(shortName, version, displayName, maxSize);
94
95 function addData(db) {
96
97 alert('addData()');
98
99 db.transaction(
100
101 function (transaction) {
102
103 var lastName = $('lastName').get('value');
104 var firstName = $('firstName').get('value');
105 var street = $('street').get('value');
106 var city = $('city').get('value');
107 var phone = $('phone').get('value');
108 var mail = $('mail').get('value');
109 alert('start transaction');
110
111 var myreq = 'INSERT INTO people VALUES("", "' + lastName + '", "' + firstName + '", "' + street + '", "' + city + '", "' + phone.toString() + '", "' + mail + '")';
112 alert(myreq);
113 transaction.executeSql(myreq, [], nullDataHandler, errorHandler);
114
115 alert('executeSQL for adding passed');
116
117 });
118
119 }
120
121 createTables(mydb);
122 addData(systemdb);
123 alert('createTables(db) is called');
124
125 } //end else
126
127 } //end if(errors = 0) {
128} // end sendForm()