PHP连接sql2008 R2 Call to undefined function sqlsrv_connect() in 错误!!

PHP连接mssql2008 r2报错
Fatal error: Call to undefined function sqlsrv_connect() in C:\inetpub\wwwroot\3.php on line 10
系统 win7 sp1 64位
IIS7 + mssql2008 r2
PHP版本 php-5.3.8-nts-Win32-VC9-x64
扩展DLL为
php_sqlsrv_53_nts_vc9.dll
php_pdo_sqlsrv_53_nts_vc9.dll
测试代码
<?php
//本地测试的服务名
$serverName = "(127.0.0.1)";
//使用sql server身份验证,参数使用数组的形式,一次是用户名,密码,数据库名
//如果你使用的是windows身份验证,那么可以去掉用户名和密码
$connectionInfo = array( "UID"=>"sa",
"PWD"=>"123654",
"Database"=>"cs");
$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));
}
?>
报错信息:
Fatal error: Call to undefined function sqlsrv_connect() in C:\inetpub\wwwroot\3.php on line 10
弄了一天了。。。。。。。。。。
请不要抄着别人的帖子来回答,谢谢!!

Call to undefined function sqlsrv_connect()  æ˜¯è¯´æ ¹æœ¬å°±æ²¡è¿™ä¸ªå‡½æ•°ï¼Œä½ ç¡®å®šæ‰©å±•éƒ½åŠ ä¸Šäº†ä¹ˆã€‚。。


检查你的php的ext扩展文件夹里面有没有  php_sqlsrv_53_nts_vc9.dll  è¿™ä¸ªæ–‡ä»¶


有的话,还要在c盘的windows下的  php.ini  çš„扩展部分加一句

extension=php_sqlsrv_53_nts_vc9.dll

再重启服务器


还有就是你的连接参数格式有问题


$connstr = array("Database"=>"test","Uid"=>"sa","Pwd"=>"123456","CharacterSet" => "UTF-8");
$conn = sqlsrv_connect('127.0.0.1', $connstr);


你看,服务器地址是字符串,不加括弧,至于数组的键名是否区别大小写我就不太清楚了,不过我这个是实际用的,应该是正确的,你不妨全抄过去试一试

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-20
用phpinfo()看看有没见到sqlsrv的信息,如果有就恭喜你,你的配置已经没问题了,只要下载个Microsoft SQL Server 2012 Native Client安装好重启Apache或IIS,再重启下SQl Server就OK!

这个问题MS文档上有说明的,5.2的用2008的客户端,5.3以上要用2012的客户端,还要区分ts和nts版本本回答被提问者采纳
第2个回答  2013-09-10
Fatal error: Call to undefined function sqlsrv_connect() in C:\inetpub\wwwroot\3.php on line 10

报错信息显示,是函数为定义;
很可能是你没有引入某个文件,或者文件就不存在。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网