2013-05-03 80 views
0

我想在我的數據庫中獲得一個sessionStorage,但沒有插入。如何在SQL數據庫中插入sessionStorage變量?

我的代碼如下:

window.onload = function(){   
      doit.db = openDatabase('takenlijst V0.8', '1.0', 'takenlijst database', 2 * 1024 * 1024); 

      doit.db.transaction (function (tx) { 
       tx.executeSql('CREATE TABLE IF NOT EXISTS taak (ID INTEGER PRIMARY KEY , sID INTEGER, taak, datum, conditie);'); 
       tx.executeSql('CREATE TABLE IF NOT EXISTS segment (ID INTEGER PRIMARY KEY , naam);'); 
        }); 

      document.getElementById("knopInvoeren").onclick = tInvoer; 

}; 


var tInvoer = function(){ 

      var datum = new Date(); 
      var taak = document.getElementById("taakInvoer").value; 
      var conditie = 0; 
      var sID = sessionStorage.sMenuID; 

      doit.db.transaction(function (tx) {  

       alert(""+ sessionStorage.sMenuID +""); 

       tx.executeSql("INSERT INTO taak ("+sessionStorage.sMenuID+", taak, datum, conditie) VALUES (?, ?, ?, ?);", [sID, taak, datum, conditie]); 

       }); 
      vulGegevens(); 
      ophalen(sessionStorage.sMenuID); 
     }; 

當我提醒我的sessionStorage得到正確的值,但是當我嘗試插入查詢,沒有任何反應。

有人知道我在做什麼錯嗎?

+0

JavaScript控制檯中是否存在錯誤? – epascarello 2013-05-03 11:28:02

+0

是的是這樣: 未捕獲參考錯誤:未定義sID (匿名函數) 在INSERT INTO – user2346622 2013-05-03 12:22:24

回答

0

您是否嘗試過使用簡單:

tx.executeSql("INSERT INTO taak (sID, taak, datum, conditie) VALUES (?, ?, ?, ?);", [sID, taak, datum, conditie]);

我不明白爲什麼你要提供你的SQL查詢的定義部分的評價值。