致命错误:未捕获的错误:调用 C:\xampp\htdocs\DBtest\sqlsrv.php:7 中的函数 sqlsrv_connect() 堆栈跟踪:#0 main SQLSERVER
Posted
技术标签:
【中文标题】致命错误:未捕获的错误:调用 C:\\xampp\\htdocs\\DBtest\\sqlsrv.php:7 中的函数 sqlsrv_connect() 堆栈跟踪:#0 main SQLSERVER【英文标题】:Fatal error: Uncaught Error: Call to function sqlsrv_connect() in C:\xampp\htdocs\DBtest\sqlsrv.php:7 Stack trace: #0 main SQLSERVER致命错误:未捕获的错误:调用 C:\xampp\htdocs\DBtest\sqlsrv.php:7 中的函数 sqlsrv_connect() 堆栈跟踪:#0 main SQLSERVER 【发布时间】: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
(线程安全版本)。
【参考方案1】:
MSSQL 扩展在 PHP 5.3 或更高版本的 Windows 上不再可用。 SQLSRV,Microsoft 提供了 MS SQL 的替代驱动程序:
» http://www.microsoft.com/en-us/download/details.aspx?id=20098
1.从http://www.microsoft.com/en-us/download/details.aspx?id=20098下载SQLSRV32.EXE(Microsoft Drivers for PHP for SQL Server)
2.选择路径:C:\xampp\php\ext
3.取消注释或附加扩展名 = php.ini 中的 php_sqlsrv_56_ts.dll
4.从 XAMPP 控制面板重新启动 Apache(停止/启动)
我测试了它,它可以 100% 工作
【讨论】:
它说当我尝试重新启动 apache 时,程序入口点 _zval_ptr_dtor 无法位于动态链接库中 thewindowsclub.com/… 检查这个解决方案以上是关于致命错误:未捕获的错误:调用 C:\xampp\htdocs\DBtest\sqlsrv.php:7 中的函数 sqlsrv_connect() 堆栈跟踪:#0 main SQLSERVER的主要内容,如果未能解决你的问题,请参考以下文章
致命错误:未捕获的错误:在 null 上调用成员函数 select()
致命错误:未捕获错误:调用未定义函数 is_product()
致命错误:未捕获的错误:调用未定义的方法 Connection::prepare() [重复]
致命错误:未捕获的错误:调用 C:\xampp\htdocs\ 中未定义的函数 mysql_connect()
Woocommerce 出现致命错误:未捕获的错误:调用未定义的方法 WooCommerce::get_image_size()