PHP 连接SQL2008实践

(本机系统是64位Win7,连接数据库是SQL Server 2008 R2)

我下的PHP的版本为  php-5.3-win32-vc9-x86

PHP连接不上2008要用到微软为PHP提供的最新第三方扩展SQL Server Driver for PHP才行。

http://www.microsoft.com/en-us/download/details.aspx?id=20098

可以微软官方这下载 :下载

下载驱动程序,下载后安装释放程序,里面有以下文件:
php_pdo_sqlsrv_52_nts.dll
php_pdo_sqlsrv_52_ts.dll
php_pdo_sqlsrv_53_nts_vc6.dll
php_pdo_sqlsrv_53_nts_vc9.dll
php_pdo_sqlsrv_53_ts_vc6.dll
php_pdo_sqlsrv_53_ts_vc9.dll
php_sqlsrv_52_nts.dll
php_sqlsrv_52_ts.dll
php_sqlsrv_53_nts_vc6.dll
php_sqlsrv_53_nts_vc9.dll
php_sqlsrv_53_ts_vc6.dll
php_sqlsrv_53_ts_vc9.dll
SQLServerDriverForPHP.chm(手册,英文够好的话,可以看看,嘿嘿)
SQLServerDriverForPHP_License.rtf
SQLServerDriverForPHP_Readme.htm(自述文件)

关于VC6和VC9的区别

VC6 版本是使用 Visual Studio 6 编译器编译的,如果你是在windows下使用Apache+PHP的,请选择VC6版本。

VC9 版本是使用 Visual Studio 2008 编译器编译的,如果你是在windows下使用IIS+PHP的,请选择VC9版本。

以上虽然是这样说的但是我还是用的是Apache。之前用vc6的不行,换成vc9的后 好了。


开始配置   由于我的版本是VC9 所以选择这两个dll
选择php_sqlsrv_53_ts_vc9.dll和php_pdo_sqlsrv_53_ts_vc9.dll。把文件拷贝到PHP文件夹下的ext目录下,然后在配置文件php.ini
的最后加上如下配置

[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_53_ts_vc9.dll 
[PHP_SQLSRV]
extension=php_sqlsrv_53_ts_vc9.dll 

再重启Apache服务。

phpinfo();  看下配置的信息 如果有以下的信息 说明配置生效了




<?php
$serverName = "localhost"; 
$uid = "sa"; 
$pwd = "666666";
$connectionInfo = array("UID"=>$uid,"PWD"=>$pwd,"Database"=>"SalarySend");
$conn = sqlsrv_connect( $serverName,$connectionInfo); 
if( $conn == false) 
{ 
echo "连接失败!"; 
die( print_r( sqlsrv_errors(), true)); 
}
else
echo 'success';
?>

运行成功!

连接成功!

公司折腾了大半个下午,回家了继续折腾!总结原因  是因为配置的dll 没有配置正确  网上查的版本大多数是这些配置:


extension=php_pdo_sqlsrv_53_ts_vc6.dll
extension=php_sqlsrv_52_ts_vc6.dll


[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_53_ts_vc6.dll
[PHP_SQLSRV]
extension=php_sqlsrv_52_ts_vc6.dll

   

最后成功的配置是:

[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_53_ts_vc9.dll 
[PHP_SQLSRV]
extension=php_sqlsrv_53_ts_vc9.dll 

配置后要重启Apache服务。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值