【发布时间】:2017-03-14 00:20:36
【问题描述】:
我在使用 OCI8 连接 PHP 和 Oracle 时遇到了一些麻烦。我已确认可以连接,但不断收到以下错误:
PHP Fatal error: Call to a member function query() on resource ... on line 17.
这是我目前拥有的代码
<?php
$DB = '//DBGOESHERE:PORT/SIDHERE';
$DB_USER = '****';
$DB_PASS = '****';
$conn = oci_connect($DB_USER, $DB_PASS, $DB);
//check for errors
if (!$conn)
{
$e = oci_error();
print htmlentities($e['message']);
exit;
}
$sql = "select display_name, last_export_file, last_export_date from schema.ms_export where last_export_date > sysdate -1 order by last_export_date desc";
$stid = oci_parse($conn, $sql);
oci_execute($stid);
while (oci_fetch($stid)) {
echo oci_result($stid, 'display_name') . " | ";
echo oci_result($stid, 'last_export_file') . " | ";
echo oci_result($stid, 'last_export_date') . "<br>\n";
}
oci_free_statement($stid);
oci_close($conn);
?>
任何帮助将不胜感激!从技术上讲,我试图让它输出到一个漂亮的 HTML 表格中,但从廉价和肮脏的换行符开始。
谢谢!
【问题讨论】:
-
您发布的代码中没有
query()的实例,因此问题不存在。找出正确文件中的第 17 行并发布该代码。 -
我发布的代码是致命错误引用的整个文件。我相信第 17 行是 $sql 行或 $stid 行。不幸的是,我目前无法访问服务器以确认具体是哪一个,但我知道它是这两者之一。
标签: php html oracle oracle-call-interface