php5.3不能连接mssql数据库的解决方法

本文实例讲述了PHP5.3不能连接mssql数据库解决方法分享给大家供大家参考。具体分析如下:

自从PHP5.3之后系统就不支持mssql_connect这个函数连接了,以前我也讲可以使用com接口来实现,现在我再介绍解决PHP5.3不能连接mssql数据库另一方法.

windows系统下,PHP5.3以上的版本已经不支持mssql扩展.

首先http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx 点击 get it 下载sqlSRV20.EXE。

文件解压到PHP的扩展文件夹ext下,打开PHP.ini在结尾添加:

代码如下:
PHP_PDO_sqlSRV] extension=PHP_pdo_sqlsrv_53_nts_vc6.dll [PHP_sqlSRV] extension=PHP_sqlsrv_53_nts_vc6.dll
保存后重启apache即可,附上简单的PHP连接的例子,代码如下:
代码如下:
"root", "PWD"=>"root2010", "Database"=>"master");

$conn = sqlsrv_connect( $serverName,$connectionInfo);
if( $conn )
{
echo "Connection established.n";
}
else
{
echo "Connection Could not be established.n";
die( print_r( sqlsrv_errors(),true));
}
?>


我使用的是wamp5.1集成安装包,在windows server 2008上面做的测试,PHP5.4以上版本测试没有成功.

如果使用这个扩展连接Sql Server 2005以上版本的sql server(如sql server 2008),你还需要在机器上先安装 sql Server Native Client :http://download.microsoft.com/download/0/E/6/0E67502A-22B4-4C47-92D3-0D223F117190/sqlncli.msi

这个扩展为PHP新增了一系列sqlsrv_开头的函数,函数参考如下:

代码如下:
sqlsrv_begin_transaction sqlsrv_cancel sqlsrv_client_info sqlsrv_close sqlsrv_commit sqlsrv_configure sqlsrv_connect sqlsrv_errors sqlsrv_execute sqlsrv_fetch sqlsrv_fetch_array sqlsrv_fetch_object sqlsrv_fetch_Metadata sqlsrv_free_stmt sqlsrv_get_config sqlsrv_get_field sqlsrv_has_rows sqlsrv_next_result sqlsrv_num_fields sqlsrv_num_rows sqlsrv_prepare sqlsrv_query sqlsrv_rollback sqlsrv_rows_affected sqlsrv_send_stream_data sqlsrv_server_info

更多详细的说明可以在刚才的自解压的文件中有个 sqlServerDriverForPHP.chm 帮助文件中可以找到打开后点击API Reference节点.

另外看一种odb连接方式,代码如下:

代码如下:
sql用户名 $dbpass = ''; //你的mssql密码 $dbname = ''; //你的mssql库名 $connect=odbc_connect("Driver={sql Server};Server=$dbhost;Database=$dbname","$dbuser","$dbpass"); $sql="select * from content"; $exec=odbc_exec($connect,$sql); while($row = (odbc_fetch_array($exec))) { $row['id'] //?取字段值 … }

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...