我有一个与mysql
数据库一起使用的PHP登录脚本,当我尝试将其与SQLite3
数据库一起使用时,我收到以下错误
致命错误:在第13行的C:\ xampp \ htdocs \ xport \ login.php中调用未定义的方法SQLite3Stmt :: fetchArray()
session_start();
require_once ("db.php");
$db = new MyDB();
if (!empty($_POST['log_name']) && !empty($_POST['log_password']))
{
$records = $db->prepare('SELECT userid, regas, uemail, uname, pword FROM users WHERE uname = :uname');
$records->bindParam(':uname', $_POST['log_name']);
$records->execute();
$result = $records->fetch(PDO::FETCH_ASSOC);
//Tried this to
//$result = $records->fetchArray(SQLITE3_ASSOC);
if (count($result) > 0 && password_verify($_POST['pword'], $result['pword']))
{
$_SESSION['log_id'] = $id;
$_SESSION['log_name'] = $username;
$_SESSION['regas'] = $regas;
$_SESSION['uemail'] = $uemail;
header('Location: index.php?log_id="'.$id.'"');
}
else
{
echo 'Username or password incorrect!';
}
}
请问,此代码使用SQLite3
有什么问题,如何解决?感谢。
答案 0 :(得分:0)
答案 1 :(得分:0)
我用以下代码运行你的代码:
$record->fetchArray(SQLITE3_ASSOC);
它返回致命错误,但当我使用以下代码运行代码时
$record->fetch(PDO::FETCH_ASSOC);
然后它运行正常并返回一个结果对象。