gpt4 book ai didi

php - fatal error : Call to undefined function sqlsrv_connect()

转载 作者:IT王子 更新时间:2023-10-29 01:16:43 28 4
gpt4 key购买 nike

我遇到了很多关于同一主题问题的帖子,但是我仍然无法解决它,所以我问。我正在尝试在我的 php 脚本中连接到 sql。我的连接字符串是:

/* Specify the server and connection string attributes. */
$serverName = "xxx-PC\SQLExpress";
$connectionOptions = array("Database"=>"Salesforce");
$conn = sqlsrv_connect($serverName, $connectionOptions);
if($conn === false)
{
die(print_r(sqlsrv_errors(), true));
}

我已在位于 wamp 文件夹下的 php.ini 文件中安装并包含以下内容:C:\wamp\bin\php\php5.4.16:

extension=c:/wamp/bin/php/php5.4.16/ext/php_sqlsrv_53_ts.dll

我的 wampserver 运行良好,wampapachewampsqld 服务也运行良好。我能够成功执行 php.exe。但是,我无法连接到我的数据库所在的 SQL Server 2008 R2。请帮忙!

编辑 1:当我尝试连接到 SQL Server 2008 R2 时,wamp 服务器正在运行 wampmysql 服务。这可能是原因吗?我应该使用 MySQL 而不是 SQL 吗?有什么指点吗?

编辑 2:虽然我添加了 extension=php_sqlsrv_54_ts.dll,但我在运行 phpinfo() 时根本看不到 sqlsrv 部分在位于 wamp 服务器的 bin 文件夹中的 php.ini 文件中。

enter image description here

最佳答案

安装第三方扩展时需要确保所有编译参数匹配:

  • PHP 版本
  • 架构(32/64 位)
  • 编译器(VC9、VC10、VC11...)
  • 线程安全

常见故障包括:

  • 编辑错误的 php.ini 文件(这在 bundle 中很常见); phpinfo()中显示了正确的路径。
  • 忘记重新启动 Apache。
  • 无法看到启动错误;这些应该显示在 Apache 日志中,但您也可以使用命令行来诊断它,例如:

    php -d display_startup_errors=1 -d error_reporting=-1 -d display_errors -c "C:\Path\To\php.ini" -m

如果一切正常,您应该会在命令输出中看到 sqlsrv 和/或 phpinfo()(取决于您正在配置的 SAPI):

[PHP Modules]
bcmath
calendar
Core
[...]
SPL
sqlsrv
standard
[...]

phpinfo()

关于php - fatal error : Call to undefined function sqlsrv_connect(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22015179/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com