无法使用PHP连接到SQL Server

时间:2011-02-03 13:27:06

标签: php sql sql-server programming-languages

我正在尝试使用PHP连接到我的本地SQL Server 2008 R2(也用2005测试过,完全相同的结果)。我正在使用PHP 5.1,它仍然支持php_mssql和mssql_connect()。

由于某种原因PHP只是找不到我的服务器,我可以通过ODBC完美连接,这很好,但我想直接连接到SQL Server。

我已经在不同服务器上将PHP连接到SQL Server一百万次了,这个似乎是唯一一个给我发问题的人。

这是我的小测试代码,试图让连接正常工作。

//define connection garbage
$db['hostname'] = "USER90C6\SQLEXPRESS";
$db['username'] = "user";
$db['password'] = "password";
$db['database'] = "kal_auth";

//connection string
$conn = mssql_connect($db['hostname'], $db['username'], $db['password']);


//does it work? :o
if($conn)
{
    echo "works";
}
else 
{
    echo "fails";
}

此代码产生的错误:

Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server:     USER90C6\SQLEXPRESS in C:\xampp\htdocs\test.php on line 9
fails

我的设置有严重错误吗?或者我错过了什么。

2 个答案:

答案 0 :(得分:0)

  • 您是否在服务器的配置工具上启用了TCP / IP?
  • 防火墙是否阻止了您可能正在使用的任何端口?
  • 您的MDAC(微软数据访问组件)是否已更新?
  • 在php.ini中启用mssql.secure_connection

答案 1 :(得分:0)

我认为你不会错过任何东西..你的连接字符串似乎是正确的(你收到“无法连接”错误..)。 在我看来,你的问题可能是版本不兼容或用户权限错误。首先:查看您在PHP中使用的DLL驱动程序,并检查它与您的MSSQL版本的兼容性。 如果有可能的话,也许可以是一个新的PHP安装,最新的稳定版本。看看:http://www.php.net/manual/en/mssql.requirements.php

祝你好运。