我当地的环境是WAMP。对于几个页面,我必须访问远程托管的MSSQL,运行查询并获得返回结果。
向我提供了以下信息(蒙面值):
我以前从未连接过远程托管的DB。来自示例at:http://php.net/manual/en/function.mssql-connect.php
我在一个测试文件MSSQLconnect.php中尝试了这一点:
<?php
// Server in the this format: <computer>\<instance name> or
// <server>,<port> when using a non default port number
$server = '11.22.33.44\abcdefgh';
// Connect to MSSQL
$link = mssql_connect($server, 'db_username', 'db_password');
if (!$link) {
die('Something went wrong while connecting to MSSQL');
}
?>不知何故我联系不上。我尝试了连接字符串的所有变体:
$server = '11.22.33.44/abcdefgh';
$server = 'http://11.22.33.44\abcdefgh';
$server = 'https://11.22.33.44\abcdefgh';
$server = '11.22.33.44';
$server = '11.22.33.44:1431';
$server = '11.22.33.44,1431';这些(以及这些变化)中的每一个都返回“连接到MSSQL时出了问题”。
我已经通过php.ini启用了mssql,并且可以看到phpinfo。是否有任何需要传递的附加字符串?
发布于 2015-04-17 17:44:43
首先,不要在这里提供对数据库的完全访问(除非您的用户和密码只是占位符)。其次,您必须确保运行SQL的主机已启用远程访问。如果您的MSSQL服务器没有启用远程访问,无论您如何尝试连接,您都会失败。
发布于 2015-04-17 17:58:55
$server = '11.22.33.44';
// Connect to MSSQL
$link = mssql_connect($server, 'db_username', 'db_password');上面的代码应该只起作用,只有mssql是不允许远程配置的,因此它阻止了对ip的访问。您必须启用mssql远程访问。
发布于 2015-04-20 09:47:29
我也有同样的问题,在玩了几次之后,我终于让它用sqlsrv_query()连接起来了。
不确定是因为PHP版本更新什么的。
对此做些研究,这对我有用。
https://stackoverflow.com/questions/29706035
复制相似问题