这是我一直在失眠的事情,所以如果有人能帮助我,我会非常感激。
所以,我试图为游戏设置一个启动器。我的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错误。
希望有人能在这里找到问题的解决方案, 谢谢!
答案 0 :(得分:1)
php_sqlsrv_54_nts.dll
是SQLSRV extension,而不是MSSQL one。您应该使用sqlsrv_*
系列函数而不是mssql_*
函数。