我刚刚安装了 Fedora 12,正在尝试让 PHP 和 SQLite 工作yum install php php-devel php-pdo
。我通过以下方式安装了 PHP:并重新启动了 Apache。PHP 页面工作正常,但每当我尝试加载使用 SQLite 的页面时,页面都不会被处理,并返回空白,没有正在处理的 PHP 代码。我用来测试 SQLite 的页面是:
<html>
<head></head>
<body>
<?php
// set path of database file
$db = $_SERVER['DOCUMENT_ROOT']."/../library.db";
// open database file
$handle = sqlite_open($db) or die("Could not open database");
// generate query string
$query = "SELECT * FROM books";
// execute query
$result = sqlite_query($handle, $query) or die("Error in query: ".sqlite_error_string(sqlite_last_error($handle)));
// if rows exist
if (sqlite_num_rows($result) > 0) {
// get each row as an array
// print values
echo "<table cellpadding=10 border=1>";
while($row = sqlite_fetch_array($result)) {
echo "<tr>";
echo "<td>".$row[0]."</td>";
echo "<td>".$row[1]."</td>";
echo "<td>".$row[2]."</td>";
echo "</tr>";
}
echo "</table>";
}
// all done
// close database file
sqlite_close($handle);
?>
</body>
</html>
返回了 body 和 html 标签,但没有呈现任何 php。我的问题是如何使用 sqlite 设置 php。是否必须重新编译,是否有 rpm?我正在寻找一种逐步启用 php 的 sqlite 的方法。谢谢
答案1
查看此问题的答案同样的问题您今天早些时候问过。
一位用户提到只需安装最新版本的 php-pdo ( yum install php-pdo
) 即可启用支持。对于大多数用户来说,这可能是一个不错的起点,但看起来您已经这样做了。
这可能是因为我在 PHP 中使用了 SQLite 函数,但这在 Fedora 13 上对我来说不起作用,所以我的经验是重新编译带有 sqlite 支持的源代码的 PHP(据我所知,它没有内置在 Fedora Core 4 及更高版本中)。我必须从http://php.net/downloads.php并对其进行编译以支持 SQLite 模块。
tar xfvj php-5.3.2.tar.bz2
cd php-5.3.2/ext/sqlite/
phpize
./configure
make
make install
/etc/init.d/httpd restart