【问题标题】:WebSQL - Check database for records (javascript)WebSQL - 检查数据库的记录(javascript)
【发布时间】:2016-03-07 15:58:07
【问题描述】:

我正在开发一个 phonegap 应用程序,并且到目前为止已经设置了我的插入和删除功能正常工作的数据库。

我现在正在努力使用数据库中的数据检查输入值,所以例如现在我只是尝试检查是否返回了任何行,如果有这将意味着用户和输入的密码在数据库,如果没有返回行,则 user 和 pass 为 false。

我没有从 sql 语句 (函数 errorCB) 中得到任何错误,我也确实在函数 LoginSuccess 中放置了一个调试警报并且有效,但是在删除 LoginSuccess 函数中的调试警报后,我没有收到提示有任何警报,而页面只是刷新。

我已从代码中删除了与此问题相关的删除和插入功能。

任何帮助将不胜感激。

document.addEventListener("deviceready", onDeviceReady, false);

           var db;

             function onDeviceReady() {
              db = window.openDatabase("DBkhan", "1.0", "SFDatabase", 2*1024*1024);
                         db.transaction(createDB, errorCB, successCB);

                     }

            function createDB(tx) {
   tx.executeSql('CREATE TABLE IF NOT EXISTS mahdi (FirstName text, LastName text, Email text, Password text)');

                     }

                     function errorCB(err) {
                         alert("Error processing SQL: "+err.code);
                     }

                     function successCB() {
                  alert("Database Ready");
                     }

 function loginUser()
         {
        db = window.openDatabase("DBkhan", "1.0", "SFDatabase", 2*1024*1024);
        db.transaction(loginDB, errorCB, LoginSuccess);
        }

        function loginDB(tx)
        {
           var Username = document.getElementById("username").value;
         var Password = document.getElementById("password").value;
         tx.executeSql("SELECT * FROM mahdi WHERE FirstName='" + Username + "' AND Password= '" + Password + "'");

         } function LoginSuccess(tx, results) {
           if (results.rows.length > 0) {
           alert ("User and Pass Found");
           }
           else
           {
           alert ("User and Pass incorrect");
           }

}

【问题讨论】:

    标签: javascript sql database sqlite cordova


    【解决方案1】:

    别担心,一切都已解决。如果你想看看我改变了什么,请参见下文。好像它是executesql语句中缺少的数组[]并将renderList(从loginSuccessful更改)调用到executesql语句中。

           function loginDB(tx)
            {
            alert("yep yep yep");
               var Username = document.getElementById("username").value;
             var Password = document.getElementById("password").value;
             tx.executeSql("SELECT * FROM mahdi WHERE FirstName='" + Username + "' AND Password= '" + Password + "'", [], renderList);
    
             }
               function renderList(tx,results) {
               if (results.rows.length > 0) {
                navigator.notification.alert("User and Pass Found");
               }
               else
               {
               navigator.notification.alert("User and Pass incorrect");
               }
    

    }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-23
      • 2013-12-24
      • 2011-08-15
      • 2012-10-09
      • 2013-12-18
      • 1970-01-01
      相关资源
      最近更新 更多