2014-02-11 125 views
0

我在phonegap中构建一个应用程序,并试图验证我的情况,如果'用户名'(示例)存在于我的数据库本地存储中,但我没有成功。如何验证我的数据库中存在的数据sqlite

if(getUser(document.getElementById('username').value)){ 
... 
} else{ 
...//always keeping going here 
} 

function getUser(username) { 
    db.transaction(function(tx) { 
     try { 
     tx.executeSql('SELECT id FROM user where username = ?', [username], function(tx, results) { 
      if(results.rows.length > 0) { 
      return true); 
       } else { return false; } 
      }); 
     } catch(e){} 
    }); 
} 
+0

从SQLite标签进来。 Javascript并不是我的专长,但你的花括号和parens看起来并不平衡。这是否编译和运行没有错误? – rutter

+0

是的。它没有找到用户名,正如我所说的那样,它就是例子。真正的有很多线条。 – fsi

回答

2

不要忘记:executeSql是一个异步请求。 意味着你的函数getUser在从你的查询中得到结果之前就结束了。 而你没有返回值,所以你的功能是返回false

<script> 
function test() {} 

if (test()) 
    console.log('true'); 
else 
    console.log('false') 
</script> 
+0

你能否给我建议/建议来验证/验证用户是否存在于数据库中? – fsi

+0

还没有尝试过,但你看看这个帖子:http://stackoverflow.com/a/12060506/1083906 – star

相关问题