所以我让这个项目获取一个以前使用 MySQL 现在使用 Oracle 的页面。所以我安装了 oci8 PHP 模块并创建了一个测试页面来进行更改。这是我正在更新的页面,我不是 Oracle 人员。我是 MySQL/PostgreSQL 的人。
无论如何,有这些原始参数:
$webIndex = mysql_db_query('main', 'SELECT * FROM links2');
while ($garbage = mysql_fetch_array($webIndex)) {
$descriptions = $garbage['descr'];
$urls = $garbage['url'];
print "<a href=\"$urls\">$descriptions</a><br />";
$i++;
}
所以我将这些行替换如下:
$webIndex = oci_parse('main', 'SELECT * FROM links2');
while ($garbage = oci_fetch_array($webIndex)) {
$descriptions = $garbage['descr'];
$urls = $garbage['url'];
print "<a href=\"$urls\">$descriptions</a><br />";
$i++;
}
执行此操作后,跟踪 -f apache 错误日志并得到:
[Thu Jan 02 14:41:24 2014] [error] [client 10.10.102.75] PHP Warning: oci_parse() expects parameter 1 to be resource, string given in /srv/www/htdocs/db/index-woods.php on line 15
[Thu Jan 02 14:41:24 2014] [error] [client 10.10.102.75] PHP Warning: oci_fetch_array() expects parameter 1 to be resource, null given in /srv/www/htdocs/db/index-woods.php on line 17
[Thu Jan 02 14:41:24 2014] [error] [client 10.10.102.75] PHP Notice: Undefined variable: pageText2 in /srv/www/htdocs/db/index-woods.php on line 105
[Thu Jan 02 14:41:24 2014] [error] [client 10.10.102.75] PHP Notice: Undefined variable: pageText3 in /srv/www/htdocs/db/index-woods.php on line 106
最后两个错误与前两个有关。基于这些错误,看来oci_parse
是oci_fetch_array
不正确的。这些是第 15 行和第 17 行 BTW。
再一次,我不知道甲骨文...