我只是創建一個簡單的登錄腳本來檢查用戶名/密碼,如果有數據庫匹配,然後它會登錄。我想我大部分都會打開數據庫,從登錄名中抓取用戶名/密碼。我想我也設置我的查詢,它也抓住了用戶名和密碼。我怎麼去比較它呢?我一直堅持這一點。我的抓取也不正確,它給了我一個錯誤。我對SQLite /數據庫很陌生,所以這可能看起來很糟糕的代碼,但我盡我所能。查詢和提取比較SQLite
<?php
//opens database
class MyDB extends SQLite3
{
function __construct()
{
$this->open('UserAccounts.db');
}
}
$db = new MyDB();
//username and pw from index.html
$user = $_REQUEST['myusername'] ;
$pw = $_REQUEST['mypassword'] ;
//if there is a database, it opens.
if(!$db){
echo $db->lastErrorMsg();
} else {
//Test to see if things are working correctly.
echo "Opened database successfully\n";
echo "$user";
echo "$pw";
}
$result = $db->query("SELECT * FROM login WHERE user = '$user' AND password = '$pw'");
if ($result->fetchColumn() == $user) {
$_SESSION['loggedin'] = true;
echo "Success";
};
if(!$_SESSION['loggedin']){
echo "Didn't Work";
exit;
};
你什麼錯誤? SQLite3類沒有函數:fetchColumn()您需要使用以下函數之一http://www.php.net/manual/en/class.sqlite3result.php – user602525
致命錯誤:調用未定義的方法SQLite3Result ::第28行的/Applications/XAMPP/xamppfiles/htdocs/hcc-master/checklogin.php中的fetchColumn() 是的,你說的很對,很多人說它不存在。 我真的不知道發生了什麼事。大聲笑 – user2318083
使用fetchArray() – user602525