我有點需要幫助,這...SQLite的PHP連接故障
我一直在這個項目上工作了幾個小時纔打到我無法克服的牆。
我做了一個小數據庫,我使用firefox的sql管理器創建,並且數據庫確實包含數據並具有.sqlite擴展名。但無論我試圖看待其他人的問題和答案,我都無法使其工作。每次我認爲我已經得到它會引發新的錯誤。
有人認爲他們可以幫助我找出問題嗎?我一直在這麼做很久,在這一點上我非常沮喪,我不知道該做什麼。我通過XAMPP運行我的網站,並從PHP收到此錯誤:
Fatal error: Call to undefined function sqlite_open() in C:\xampp\htdocs\Projects\FinalProject\You_Shall_Pass.php on line 4
我試圖修改XAMPP的php.ini的支持sqlite的,但它仍然沒有連接,我已經改變了連接方法現在幾次沒有任何結果,只是錯誤發生了輕微的變化。
如果任何人都可以幫忙,我甚至不能告訴你我多麼感激。我對這個項目感到無比興奮,我的書似乎並沒有解釋如何連接到一個sqlite文件。
代碼:
<?php
// Open database
$dbHandle = sqlite_open('YSP_db.sqlite', 0666, $error);
if(!$dbhandle) die ($error);
//Method selects function for login or new account procedure
if(isset($_POST['profileName']))
{
getUserData();
}
elseif(isset($_POST['newProfileName']))
{
createNewUser();
}
else {echo "why god why?";}
function getUserData()
{
$login = $_POST['profileName'];
$rows = $dsn->query("SELECT idUser FROM user WHERE name = '$login'");
}
?>
UPDATE:交換我的數據庫文件的擴展名從源碼開放它通過sqlite3的以分貝正如以下建議擺脫錯誤的,但現在我有兩個新: 未定義的變量:DB上線29和
Fatal error: Call to a member function query() on a non-object line 29
我也試圖通過類來替代打開數據庫,所以現在看起來是這樣的:
?php
class MyDB extends SQLite3
{
function __construct()
{
$this->open('YSP_db.db');
}
}
// Open database
$db = new MyDB();
if(!$db) die ($error);
//Method selects function for login or new account procedure
if(isset($_POST['profileName']))
{
getUserData();
}
elseif(isset($_POST['newProfileName']))
{
createNewUser();
}
else {echo "why god why?";}
function getUserData()
{
$login = $_POST['profileName'];
$rows = $db->query("SELECT idUser FROM user WHERE name = '$login'");
}
?>
我會繼續選擇它,但如果有人知道這個問題的根源,請讓我知道,並非常感謝你的幫助。
如果它的任何安慰無論如何,我有完全相同的問題,一年或兩年回來,檢查啓用sqlite的擴展等在.ini,毫無效果。但我會環顧四周。查看http://stackoverflow.com/questions/4788853/call-to-undefined-function-sqlite-open for starteers。 – Hektor 2014-12-07 20:43:46
@ user2356315謝謝。我會繼續尋找更多的信息,但在這一點上我真的很難過。 – Alzecha 2014-12-07 20:46:06
您使用的是哪個版本的PHP? – 2014-12-07 20:52:16