即使我有驱动程序,也会出现mssql_connect()错误

时间:2014-03-03 01:43:57

标签: php sql-server

这是我一直在失眠的事情,所以如果有人能帮助我,我会非常感激。

所以,我试图为游戏设置一个启动器。我的Web服务器上有一个Login.php,Visual Studio中有一个启动器。按下"开始"它连接到Login.php,它检查游戏登录凭据是否正确,如果是,它应该向Launcher返回一串随机字母(一个标记)。 Login.php尝试连接到SQL Server 2008中的数据库。

现在问题,我得到了

Fatal error: Call to undefined function mssql_connect() in C:\inetpub\wwwroot\Login.php on line 12

尝试手动转到网站时(通过在浏览器中输入127.0.0.1/Login.php)。当我尝试运行程序并按下启动时,它会返回500内部错误。

我已经搜索了mssql错误并发现mssql函数已从较新版本的PHP中删除,因此我从Microsoft下载驱动程序并在IIS 7.5上的PHP管理器中启用它们。

我使用的PHP版本是5.4.25,我启用了这些驱动程序:

php_pdo_sqlsrv_54_nts.dll
php_sqlsrv_54_nts.dll

以下是Login.php的前13行:

<?php

$conf['db_host'] = "GERA044\SQLEXPRESS";
$conf['db_user'] = "sa";
$conf['db_pass'] = "L4sfa445AdxDDLfor95";
$conf['db_name'] = "Account";

$user = sql_clean($_GET['Username']);
$passhash = sql_clean($_GET['Password']);


$con = mssql_connect($conf['db_host'],$conf['db_user'],$conf['db_pass']) or die('Database connect Fail.');
$db = mssql_select_db($conf['db_name'], $con) or die('Database Init Fail.');

简而言之:即使我有驱动程序,我仍然会收到mssql错误。

希望有人能在这里找到问题的解决方案, 谢谢!

1 个答案:

答案 0 :(得分:1)

php_sqlsrv_54_nts.dllSQLSRV extension,而不是MSSQL one。您应该使用sqlsrv_*系列函数而不是mssql_*函数。