【问题标题】:How to access remote SQL Server from PHP script [duplicate]如何从 PHP 脚本访问远程 SQL Server [重复]
【发布时间】:2012-10-17 01:30:07
【问题描述】:

可能重复:
PHP Fatal error: Call to undefined function mssql_connect()

我正在开发一个访问远程 SQL 服务器数据库的轻量级 PHP 应用程序。

到目前为止,我无法通过我的 PHP 脚本设置到 SQL Server db 的连接。

我在尝试连接到 sql DB 时不断收到此错误:

Fatal error: Call to undefined function mssql_connect()

我也尝试sqlsrv_connect($myServer, $myUser, $myPass) 时遇到类似错误

这是我已经尝试过的:

我在网上搜索了几个小时的解决方案,但没有任何效果。

我从http://www.microsoft.com/en-us/download/details.aspx?id=20098下载了驱动程序 并将它们解压缩到 php/ext 文件夹中

修改 php.ini 以添加新下载的驱动程序行:

extension=php_sqlsrv_54_ts.dll
extension=php_pdo_sqlsrv_54_ts.dll

[sqlsrv]
sqlsrv.LogSubsystems = 1
sqlsrv.LogSeverity = 1
sqlsrv.WarningReturnAsErrors = 0

重新启动 Apache 服务器

但是,查看 phpinfo() 输出它没有 sqlserv http://bit.ly/TkMC6V

您知道,我正在通过安装 EasyPHP 在我的 Windows 机器上开发它。该网站将部署在 Unix 机器上。我尝试在 Windows 和 Unix 机器上通过 php 连接 sql server 没有任何成功。

版本信息:

SQL Server 9.0.5000    
PHP ver 5.4.6    
Apache 2.4

我只是没有在我的 phpinfo() 中得到 sqlsrv,正如这个问题 PHP Fatal error: Call to undefined function mssql_connect() 中提到的那样

除了我上面列出的方法之外,还有其他安装驱动程序的方法吗?

如果您需要更多信息,请告诉我。 谢谢!

【问题讨论】:

  • +1 链接。但是,我只是没有在我的 php 信息中得到 sqlsrv。这是我的主要问题。
  • 也许您缺少 dll 或没有正确配置它?
  • 同时检查你的扩展目录是什么。如果它在 ext 目录中,那么你可以写 ext/php_sqlsrv_54_ts.dll
  • 我仔细检查了,dll 在 ext 文件夹中,并且 php.ini 有正确的 extension_dir 路径。 (我只是设置了绝对路径)。想知道 dll 的版本是否有问题或发生了什么奇怪的事情

标签: php sql database web


【解决方案1】:

我通过仔细查看phpInfo() 输出发现了问题

Loaded Configuration File   C:\Program Files (x86)\EasyPHP-12.1\apache\php.ini

我正在修改 php 目录中的 php.ini。 但是,我需要修改apache目录中的那个

我可以删除这个愚蠢的问题。 但是,我认为这可能对面临类似问题的人有所帮助。

天哪,我在这个愚蠢的问题上花了 4 个小时。 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-23
    • 2017-10-24
    • 2015-10-10
    • 1970-01-01
    相关资源
    最近更新 更多