【发布时间】:2021-04-18 04:58:28
【问题描述】:
错误问题:
致命错误:未捕获错误:调用未定义函数 C:\xampp\htdocs\DBtest\sqlsrv.php:7 中的 sqlsrv_connect() 堆栈跟踪: #0 {main} 在第 7 行的 C:\xampp\htdocs\DBtest\sqlsrv.php 中抛出
用于测试连接的 PHP:
<?php
$serverName = "LAPTOP-NUUM4IGR\SQLEXPRESS"; //serverName\instanceName
// Since UID and PWD are not specified in the $connectionInfo array,
// The connection will be attempted using Windows Authentication.
$connectionInfo = array( "Database"=>"perkuliahan");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
?>
PHP.ini 文件:
extension=php_pdo_sqlsrv_74_nts_x64.dll
extension=php_pdo_sqlsrv_74_ts_x64.dll
extension=php_sqlsrv_74_nts_x64.dll
extension=php_pdo_sqlsrv_74_ts_x64.dll
我的 phpinfo 上的 pdo_sqlsrv 看起来不错。扩展版本 5.8.0 + 12928 我已经安装了 ODBC PHP 版本 7.4.10
之前我使用的是 SQL SERVER 2008 R2,我想那不符合条件,所以我升级到 SQL Server 2012。但仍然卡住 我做错了吗?我非常感谢您的解决方案。
【问题讨论】:
-
您需要使用适当的扩展启用驱动程序的
sqlsrv部分。我的猜测是,您需要添加php_sqlsrv_74_ts_x64.dll(线程安全版本)。
标签: php sql-server sql-server-2012 sql-server-2008-r2 sqlsrv