日期:2014-05-17  浏览次数:20411 次

php链接局域网mssql的问题[原因: 未与信任 SQL Server 连接相关联]
代码
PHP code

 $hostname="HTSC";
  $dbuser="sa";    
  $dbpasswd="123456";  
  $id = mssql_connect($hostname,$dbuser,$dbpasswd) or die("无法连接数据库服务器!");


如果是本地的mssql数据库,则链接通过。但,如果链接局域网内另外一台机器就不行了。错误信息为:
Warning: mssql_connect() [function.mssql-connect]: message: 用户 '(null)' 登录失败。原因: 未与信任 SQL Server 连接相关联。 (severity 14)

我试了很多办法都不行:
1、SQL Server 和Windows 用混合模式
2、除了sa以外,也试过添加其它用户(具备所有权限)进行链接
3、telnet ip 1433 测试通过
4、数据库都是sql2000 sp4的
5、试过换了几台电脑
6、用sql2000的ntwdblib.dll覆盖了php5的文件

另外,我用vb编写的代码是能正常访问另外一台mssql服务器的。
查看了一下,mssql的用户中,有一个aspnet的用户,是否要添加一个类似的php用户才能登陆呢?

请各位帮帮忙

------解决方案--------------------
$hostname换成IP地址试试
------解决方案--------------------
楼主是用 PHP 连接 SQL SERVER?

需要配置php.ini的,将 ;extension=php_mssql.dll前面的分别去掉

默认不加载任何扩展库的
------解决方案--------------------
探讨
引用:
楼主是用 PHP 连接 SQL SERVER?

需要配置php.ini的,将 ;extension=php_mssql.dll前面的分别去掉

默认不加载任何扩展库的

谢谢你的回答
如果我没有加这个配置的话,php链接本地mssql是测试不通过的。
我现在的情况是:php能链接本地的mssql,但链接不了局域网内其它电脑的mssql

------解决方案--------------------
引用楼主 javaxi 的帖子:
查看了一下,mssql的用户中,有一个aspnet的用户,是否要添加一个类似的php用户才能登陆呢?

------解决方案--------------------
好像之前我也遇到过这种问题。

你直接用sqlserver的图形画界面中 能否通过本机访问其他的电脑呢
------解决方案--------------------
是不是防火墙的问题?
------解决方案--------------------
再次帮顶一下.