2013-10-13 231 views
0

我正在开发一个连接到Oracle数据库的PHP API,但不幸的是连接不起作用。首先,我实现了开发环境(oracle数据库服务器+ apache服务器),我想所有的配置都很好。问题是我没有从我写的代码得到任何回应,即使我输入了错误的数据。通过PHP连接到Oracle数据库

PHP信息OCI8:

[[email protected] ~]$ php --ri oci8 
oci8 
OCI8 Support => enabled 
Version => 1.4.10 
Revision => $Id: 44bfa713983a99b3e59477f6532e5fb51b6dee94 $ 
Active Persistent Connections => 0 
Active Connections => 0 
Oracle Run-time Client Library Version => 11.2.0.2.0 
Oracle Instant Client Version => 11.2 
Temporary Lob support => enabled 
Collections support => enabled 
Directive => Local Value => Master Value 
oci8.max_persistent => -1 => -1 
oci8.persistent_timeout => -1 => -1 
oci8.ping_interval => 60 => 60 
oci8.privileged_connect => Off => Off 
oci8.statement_cache_size => 20 => 20 
oci8.default_prefetch => 100 => 100 
oci8.old_oci_close_semantics => Off => Off 
oci8.connection_class => no value => no value 
oci8.events => Off => Off 

PHP代码:

<?php 
$connection = oci_connect('sys', 'rvieira', 'localhost/xe'); 

if (!$connection) { 
    $m = oci_error(); 
    echo $m['message'], "\n"; 
    exit; 
} 
else { 
    print "Connected to Oracle!"; 
} 
?> 

我也离开这里,我跟着来配置开发环境教程:

+1

你看过你的服务器日志吗?他们应该告诉你发生了什么事。 – 2013-10-13 21:58:39

+0

嗯,我决定通过CLI运行php文件,它运行并运行,但是,在浏览器中不起作用。 :| http://alojaimagens.com/images/9grkq2kylfgaaiksbd.png – Waterlog

+0

迈克W¯¯那就是: [太阳10月13日23时24分五十五秒2013] [错误] [客户端127.0.0.1] PHP的警告:oci_connect() :尝试检索第2行的/var/www/html/api.php中的错误ORA-01804 \ n的文本时出错 [Sun Oct 13 23:25:12 2013] [error] [client 127.0.0.1] PHP警告:oci_connect():OCIEnvNlsCreate()失败。系统出现问题 - 请检查LD_LIBRARY_PATH是否包含第2行的/var/www/html/api.php中带有Oracle Instant Client库的目录 – Waterlog

回答

1

你的错误信息表明,有与环境变量LD_LIBRARY_PATH一个问题,但没有详细说明到底是什么。在“在Linux上启用PHP OCI8扩展”的第6步中介绍了这一点,您可以在first link上找到它。

仔细检查你的安装 - 你可能错过了一些东西。