我正在尝试使用 PHP 连接到本地 SQL Server 2008 R2(也尝试过 2005,结果完全相同)。我使用的是 PHP 5.1,它仍然支持 php_mssql 和 mssql_connect()。
由于某种原因,PHP 无法找到我的服务器,我可以通过 ODBC 完美地连接,这很好,但我想直接连接到 MSSQL。
我已在不同的服务器上将 PHP 连接到 MSSQL 无数次,但这个似乎是唯一一个给我带来问题的。
我用的是 Macbook Pro。我尝试在 Windows XP 和 Windows 7 中使用 Bootcamp 和 Parallels Desktop。这有什么问题吗?
这是我的小测试代码,用于尝试使连接正常工作。
//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
我的设置是否存在严重错误?或者我遗漏了什么东西。
我们感谢所有建设性的意见。
谢谢
答案1
可能有很多原因:例如 NetBIOS/DNS(无法解析 USER90C6),SQL Express 可能未配置为允许远程连接,可能是 USER90C6 上运行的 Windows 防火墙。