【发布时间】:2016-09-22 15:13:43
【问题描述】:
我正在尝试在我的服务器上运行脚本。该脚本使用 sqlite2 作为数据库。 php文件是用sqlite2编写的,但是在我的服务器上我安装了sqlite3。
这是我的代码:
if (!$db = sqlite_open ('chatdb'))
{
die('Database problem. Please try again later.');
}
function sqlite_table_exists ($db, $mytable)
{
$result = sqlite_query($db, "SELECT COUNT(*) FROM sqlite_master WHERE type='table' AND name='$mytable'");
$count = intval(sqlite_fetch_single($result));
return $count > 0;
}
if (sqlite_table_exists($db, 'messages') == false)
{
$sql = 'CREATE TABLE messages (username VARCHAR(50), message TEXT, date DATE)';
sqlite_query ($db, $sql);
}
if (sqlite_table_exists($db, 'users') == false)
{
$sql = 'CREATE TABLE users (username VARCHAR(50) UNIQUE, last_activity DATE, is_kicked INTEGER DEFAULT 0, is_banned INTEGER DEFAULT 0, kick_ban_message VARCHAR(100))';
sqlite_query ($db, $sql);
}
if (sqlite_table_exists($db, 'bans') == false)
{
$sql = 'CREATE TABLE bans (ip VARCHAR(15), time DATE)';
sqlite_query ($db, $sql);
}
当我运行代码时,出现错误,例如;
Fatal error: Call to undefined function sqlite_open()
我认为代码还没有为 sqlite3 准备好。如何将此代码转换为 sqlite3?
谢谢。
【问题讨论】:
-
与“未准备好”无关。您的 PHP 安装没有启用 sqlite 插件。
-
您是否安装并启用了 PHP sqlite3 扩展?
-
是的,sqlite3 已安装并启用。