用不用这么复杂啊?下面是很久以前写的,现在翻出来应该还是对的。。
你跟oracle没连上,是因为你没有uncomment一句话,在php.ini里面。。
;extension=php_oracle.dll
把分号去掉应该可以了。
  $dblogin      = "lbs"; 
  $dbpwd        = "lbs";
  $dbname       = "ipool";
  $conn = ocilogon($dblogin, $dbpwd, $dbname);
    $query = "SELECT id FROM lbs_themes WHERE owner_id='$owner_id' AND parent_id='$topparentid' ORDER BY id ASC"; 
    $statement = ociparse($conn, $query);
    ociexecute($statement);
    $flag=1;

解决方案 »

  1.   

    改了,,还是不行,,$conn = OCILogon("test","test",$db);还是报错Warning: OCISessionBegin: ORA-12705: invalid or unknown NLS parameter value specified in /usr/local/apache/htdocs/3.php on line 9
    Oracle Connect Error 是solaris8系统上
      

  2.   

    数据库应该是正常的,,我用jsp可连接上,,但php就是不行,,请各位兄弟姐妹帮帮忙呀,,
      

  3.   

    putenv("ORACLE_SID=testlx"); 
    putenv("ORACLE_HOME=/u04/app/oracle/product/8.1.7"); 
    putenv("NLS_LANG=AMERICAN_AMERICA.ZHS16GBK"); 
    putenv("LD_LIBRARY_PATH=/u04/app/oracle/product/8.1.7/lib"); 
    putenv("ORA_NLS33=/u04/app/oracle/product/8.1.7/ocommon/nls/admin/data"); 我的经验是这些东西不要在程序里写,开apache之前用oracle用户登陆,保证系统变量都准确注册,然后测试oracle是否正常,比如用sqlplus在终端里登陆能否正常显示中文,然后再su root开启httpd,代码里面写这些东西没必要。你得到的错误信息是说NLS变量值有错, 我觉得你把上面的几句注释掉看看行不行。
    调程序还是先从简单的开始。别照抄书里的代码。
    这些是我个人意见。不一定对,呵呵,还请各位高手多指教。
      

  4.   

    重启了apache,,也重启了oracle817,用root启的apache.
      

  5.   

    我把这些
    putenv("ORACLE_SID=testlx"); 
    putenv("ORACLE_HOME=/u04/app/oracle/product/8.1.7"); 
    putenv("NLS_LANG=AMERICAN_AMERICA.ZHS16GBK"); 
    putenv("LD_LIBRARY_PATH=/u04/app/oracle/product/8.1.7/lib"); 
    putenv("ORA_NLS33=/u04/app/oracle/product/8.1.7/ocommon/nls/admin/data"); 
    都册掉后,,能连接成功,,但如果连续刷新,就会报错
    Warning: OCISessionBegin: ORA-12705: invalid or unknown NLS parameter value specified 这是为什么/