javascript - IF EXISTS clause Local SQL -
the code below works fine. however, know how know how ensure 'late' entry added lates table if student name exists in student table. tried several versions of 'if exists' , 'where exists' can't seem syntax correct. return javascript error if name not exist in student table. desired change in addlate function.
<fieldset> <legend><b>details</b></legend> <label>first name </label><input id = "firstname" type="text" autofocus="" placeholder="enter first name"><br><br> <label>last name </label><input id = "lastname" type="text" autofocus="" placeholder="enter last name"><br><br> </fieldset> <fieldset> <legend><b>information</b></legend> <label> current date:</label> <input type="text" id="datelate"/><br><br> <label> detention date:</label> <input id = "detentiondate" type="date" ><br><br> <label>time</label> <select id="mora"> <option value="am">morning</option> <option value="pm">afternoon</option> </select> <br> <br> <label> reason:</label> <textarea id = "reason" rows="2" cols="60"></textarea><br><br> </fieldset> <br> <input type="reset" value="reset"> <button type="button" id="addlate" onclick="addlate();">add late</button> </body> <script> if (window.opendatabase) { var mydb = opendatabase("students2_db", "0.1", "a database of students", 1024 * 1024); mydb.transaction(function (t) { t.executesql("create table if not exists student (id integer primary key asc, fname text, lname text, mclass text, aclass text, com text, lates integer default 0)"); t.executesql("create table if not exists lates (lid integer primary key asc, flname text, llname text, time text, reason text, date text, nextdet text)"); }); } else { alert("websql not supported browser!"); } function clearfunction() { document.getelementbyid("mora").value = ""; } function datefunction() { var today = new date(); var dd = today.getdate(); var mm = today.getmonth()+1; //january 0! var yyyy = today.getfullyear(); if(dd<10) { dd='0'+dd } if(mm<10) { mm='0'+mm } today = dd+'-'+mm+'-'+yyyy; document.getelementbyid('datelate').value= today; } function addlate() { if (mydb) { var flname = document.getelementbyid("firstname").value; var llname = document.getelementbyid("lastname").value; var date = document.getelementbyid("datelate").value; var nextdet = document.getelementbyid("detentiondate").value; var time = document.getelementbyid("mora").value; var reason = document.getelementbyid("reason").value; if (flname !== "" && date !== "" && nextdet !== "" && llname !== "" && reason !== "" && time !== "") { mydb.transaction(function (t) { t.executesql("insert lates (flname,llname,time,reason,date,nextdet) values (?,?,?,?,?,?)" , [flname,llname,time,reason,date,nextdet]); t.executesql("update student set lates = lates + 1 lname =? ", [llname]); alert("entry succesfully added"); document.getelementbyid("firstname").value = ""; document.getelementbyid("lastname").value = ""; document.getelementbyid("detentiondate").value = ""; document.getelementbyid("reason").value = ""; }); } else { alert("you must fill out empty information!"); } } else { alert("db not found, browser not support web sql!"); } } </script>
you can use simple select query using student id check if student within student database, use count of rows returned determine if student exists. if rows returned > 0, student exists, else, student not exist.
something this:
select id student id = 'student's id'
Comments
Post a Comment