① php无法加载oci8模块,无法连接oracle数据库!其中php.ini也配置了,oracle即时客户端也安装了!
php版本和你的oracle不对应吧。你用phpstudy集成包。里面php版本可以自由切换。在菜单php扩展里面勾上oci8就自动打开扩展。扩展管理很方便。
② PHP如何连接oracle数据库
只要是一提到“System.Data.OracleClient的”
连接字符串的例子:
用户ID =用户;数据源=服务器/数据库名称;密码=通行; - 其他与SQLSERVER是相似的,但这样要改变的OracleConnection
SqlDataAdapter的SqlConnection的希望变为OracleDataAdapter
的SqlCommand的OracleCommand
③ php连接oracle数据库连不上
;extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client
extension=php_oci8_11g.dll ; Use with Oracle 11gR2 Instant Client
看看是不是版本错了 没用过10gr2
oracle11的话 php_oci8_11g.dll
if($this->dbstatic==false)
{
$this->dbid=oci_connect($this->user,$this->pass,$this->host,$this->code);
if($this->dbid)
{
$this->dbstatic=true;
}
else
{
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
print htmlentities($e['message']);
return 0;
}
}
我没问题
④ 如何在没有安装Oracle的机器上打开PHP的OCI8扩展
linux下PHP Oracle客户端扩展(OCI8)安装
因为最近的项目需要用php访问oracle数据库,不得不在linux下给php安装oci8扩展。php也可以使用pdo访问oracle数据库,但还是需要安装客户端。参考张宴博客的这篇文章,出了很多问题,多次尝试,足够折腾才安装成功。首先到oracle官网的这个页面下载相关的文件,注意要连数据库服务器的版本,一定要对应,否则安装成功也会连不上,同时也要区分32位、64位服务器,比如我要连的数据库服务器是oracle10.2.0.4,64位主机,那么我要下载下面三个文件:oracle-instantclient-basic-10.2.0.4-1.x86_64.rpmoracle-instantclient-devel-10.2.0.4-1.x86_64.rpmoracle-instantclient-sqlplus-10.2.0.4-1.x86_64.rpm用以下命令安装rpm -ivh oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm oracle-instantclient-sqlplus-10.2.0.4-1.x86_64.rpm再安装OCI8 PHP扩展yum install lio
tar zxvf oci8-1.3.5.tgz
cd oci8-1.3.5/
/home/renjun/php/bin/phpize CFLAGS="-I/usr/include/oracle/10.2.0.4/client64/" CXXFLAGS="-I/usr/include/oracle/10.2.0.4/client64/"
./configure --with-php-config=/home/renjun/php/bin/php-config --with-oci8=/usr/lib/oracle/10.2.0.4/client64/上面橙色的表示php的安装路径,红色的表示oracle路径,oracle路径会因为版本的不同文件夹名称有所不同,要到相应目录查看一下,确认路径正确。然后执行make,如果报错,就执行./configure --with-php-config=/home/renjun/php/bin/php-config --with-oci8=instantclient,/usr/lib/oracle/10.2.0.4/client64/lib/成功后会提示你执行make test,那就执行吧,可能会出现一堆的fail,但是不要紧。继续make install。修改php.ini文件,添加extension = "oci8.so"重启apache,用phpinfo()函数查看oci8是否安装成功。第一次安装的时候装错版本,重装了很多遍显示的仍然事老版本的扩展,必须要删除oci8-1.3.5这个目录重新解压,执行上面的命令才可以。最后鄙视一下oracle,下载你的扩展还必须注册你的会员,几十个必填字段,不就下载个东西么!
⑤ 我要用PHP链接ORACLE的数据库,当我把PHP.INI的配置文件里面的;extension=php_oci8.dll启用之后
你看下apache的log
在Apache2.2\logs\error.log,
看看是不是有语法错误导致apache启动不来。
⑥ php+oracle+apache:使用$conn = &ADONewConnection('oci8')后无法显示页面
http://www.phpchina.com/html/87/t-8187.html
⑦ 谁知道 php 中的oci8是什么吗 越详细越好 谢谢 ...
php中的oci8 是支持操作oracle 数据库的扩展控件。
oci8 函数就是php_oci8.dll 操作ORACLE的一系列函数。
要开启这个扩展支持,就在 php.ini 中修改 ;extension=php_oci8.dll 去掉分号重启apache
一般我们操作 mysql 时会用像 mysql_query ()这样的函数来叫MYSQL执行SQL语句
oci8 函数 就是针对oracle 数据库的
⑧ php 连接oracle数据库我把php,ini里的extension=php_oci8.dll启用了然后访问PHP的网站报这个错
500错误一般是PHP文件有语法错误导致的,可以再DOS下运行PHP程序查看错误的位置,也可以修改PHP.INI中的error_log指定把错误信息记录到文件里面,例如:
error_log = php_errors.log
这样就可以报错时查看此文件获得错误的具体位置和原因。