【问题标题】:Why I can not connect to Oracle 10g from a PHP program?为什么我无法从 PHP 程序连接到 Oracle 10g?
【发布时间】:2016-07-30 01:40:30
【问题描述】:

我用的是Oracle 1Og快递版和EasyPHPv5.3.5.0

我的 oracle 数据库在 8080 端口上运行。

我无法使用我的 php 程序连接 oracle 数据库。

我对 oci_connect 语句的第三个参数感到困惑。

这是我的代码。

<?php
$conn = oci_connect("scott", "tiger","localhost/XE");
if (!$conn) 
{
   $m = oci_error();
   echo $m['message'], "\n";
   exit;
}
else 
{
   print "Connected to Oracle!";
}

oci_close($conn);
?>

【问题讨论】:

  • echo '&lt;pre&gt;'.print_r(oci_error(), true).'&lt;/pre&gt;'; 产生什么信息?
  • 解析错误:语法错误,意外的 T_STRING,期待 ',' 或 ';'在第 16 行的 C:\Program Files\EasyPHP-5.3.5.0\www\Database_connection\add.php 中
  • 第 16 行是哪一行?您的代码只有 14 行。
  • 这是添加上一行后的输出...怎么办??
  • 对不起...在主代码中有一些注释行....现在显示它在第 15 行

标签: php database oracle database-connection


【解决方案1】:

你可以试试这个方法吗? (假设你知道你的 tnsnames 条目)

<?php
    $tns = "(DESCRIPTION=(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))(CONNECT_DATA=(SID=XE)))" ;

    if($conn = OCILogon("scott", "tiger", $tns))
    {
        echo “Connected.\n”;
        OCILogoff($conn);
    }
    else
    {
        $err = OCIError();
        echo “Connection ERR.” . $err[text] . "\n";
    }
?>

【讨论】:

    猜你喜欢
    • 2015-02-26
    • 1970-01-01
    • 2011-01-29
    • 1970-01-01
    • 2010-10-06
    • 1970-01-01
    • 1970-01-01
    • 2015-11-22
    • 1970-01-01
    相关资源
    最近更新 更多