调用成员函数准备错误

时间:2015-03-05 05:00:06

标签: php sqlite pdo fatal-error

我在执行以下代码时遇到问题。我收到一个错误:致命错误:每次运行它时,在C:\ xampp \ htdocs中调用null上的成员函数prepare()...当它出于某种原因要查询数据库时,它会出错。

我正在创建一个检查用户名和密码的函数,如果匹配,请将用户登录,依此类推。我要做的是为外部函数提供用户名和密码,然后将这些变量传递给内部函数(checkUser)以检索用户和密码。一旦我有一个数组,我想比较,看看它们是否匹配。如果他们这样做,那么我想继续(为了简单起见,我把剩下的休息了)。我不知道为什么我得到了我得到的错误,特别是因为它甚至没有在CheckUser中运行第3行而没有致命的错误。

这是家庭作业,fyi,桌上的卡片。试图超越这一部分。谢谢你的帮助。

function isValidUser($username, $password){
     $checker = checkUser($username, $password);
     if ($checker[user_email] == $username && $checker[user_pwd] == $password ) {
         return TRUE;
     }

 }

function checkUser($username, $password) {
    global $db;
    $st = $db -> prepare('SELECT * FROM user WHERE user_email = ? and user_pwd = ?;');
    $st -> bindParam(1, $username);
    $st -> bindParam(2, $password);
    $st -> execute();
    return $st -> fetch(PDO::FETCH_ASSOC);
}

1 个答案:

答案 0 :(得分:1)

尝试此而不是global $db

$db = $GLOBALS['db'];