这是我的电话,发出500错误。
$myServer = "MICKMAN\Mickman";
$myUser = "tester";
$myPass = "tester";
$myDB = "movieDB";
$con = mssql_connect($myServer, $myUser, $myPass);
if ( !$con )
{
die( 'Could not connect: ' );
}
我使用PHP 5.4,phpinfo显示sqlsvr已启用。我将此扩展添加到php.ini:
extension=php_sqlsrv_54_nts.dll
我在Windows中设置了ODBC并在MSSQL Studio中创建了一个用户。 我不确定我错过了什么。 PHP错误甚至没有显示。当我尝试访问它时,我得到一个空白页面。
我之前使用PHP连接到DB,但我以前从未为远程连接设置过。我已经尝试了尽可能多的方法,但我仍然遇到同样的问题。
答案 0 :(得分:0)
您应该使用SQL Server PDO驱动程序(更多信息here)。
安装并启用驱动程序后,您可以测试连接,如下所示:
try {
$host = new PDO('sqlsrv:server=localhost;Database='.$database, $username, $password);
foreach($host->query('SELECT * FROM SOME_TABLE') as $row) {
print_r($row);
}
$host = null;
} catch(PDOException $e){
die('Connect not connect: '.$e->getMessage());
}
答案 1 :(得分:0)
您正在尝试使用mssql_connect提供的php_mssql.dll extension。 php(> 5.3)不再包含此扩展名。您应该使用php_sqlsrv_54_nts.dll提供的以sqlsrv为前缀的函数。
$myServer = "MICKMAN\Mickman";
$connectionInfo = array(
"UID" => "tester"
, "PWD" => "tester"
, "Database" => "movieDB"
);
$con = sqlsrv_connect($myServer, $connectionInfo);
if( $con === false ) {
echo "Unable to connect.";
die( print_r( sqlsrv_errors(), true));
}