【问题标题】:Cant connect to Microsoft SQL Server Management Studio through PHP无法通过 PHP 连接到 Microsoft SQL Server Management Studio
【发布时间】:2014-03-23 03:17:38
【问题描述】:

我对 PHP 和 SQL 都比较陌生,并且我正在开发一个 PHP 应用程序以在工作服务器上运行。我使用 php.net 中的代码创建了一个测试页面,以逐字测试连接,但我不断收到以下 错误

Fatal error: Call to undefined function mssql_connect()

我的代码是

<?php
$server = 'myserver\SQLEXPRESS';

$link = mssql_connect($server, 'username', 'password');

if (!$link) {  
die('Something went wrong while connecting to MSSQL');  
}  
?>

显然,在建立连接之前我无法继续进行该项目,是否有什么我可能遗漏或做错的事情?

任何帮助将不胜感激!

【问题讨论】:

  • 您不是“连接到 SSMS”,而是“连接到 SQL Server”(就像 SSMS 一样)。
  • 你试过 $link = mysqli_connect($server, 'username', 'password');
  • 你的 php 版本是多少?您未定义的函数意味着它不识别命令。还是你安装了mssql的驱动?
  • 我的php版本是5.4.24 谢谢

标签: php sql-server


【解决方案1】:

可能有多种原因。很可能是您使用 PHP 5.3+ 并且自此版本以来不支持 mssql 函数。您应该使用 Microsoft 的 PDO 或 SQLSRV 驱动程序。尝试运行 phpinfo() 以查看您的安装支持哪些驱动程序。

【讨论】:

    【解决方案2】:

    我忘记了我从哪里得到这个答案,但已经超过 1 年了。

    1. First search for `;extension=php_mssql.dll` in php.ini file and remove semicolon `;`.
    2. Copy `ntwdblib.dll` from php directory to windows root directory, sometimes it dosen't
    work so you will have to copy it in system32 directory.
    3. Copy `php_mssql.dll` from php directory to windows root directory, again sometimes it 
    dosen't work so you will have to copy it in system32 directory.
    4. Search or download `msvcr71.dll` and copy it in windows system32 directory.
    5. Restart apache web server.
    

    这对我有用。请尝试告诉我结果。

    【讨论】:

    • 只是我最初应该问的另一个问题。我正在使用 PHPmyadmin 来托管 PHP 站点,但是具有 sql 服务器的服务器是不同的服务器,哪一个需要 php 扩展等?
    • 我不确定,但是安装了 Web 服务器的那个。如有必要,您可以在两台服务器上复制文件。
    • @user3361017 如果这对你有用,请告诉我。
    • 哪个 php.ini 文件? easyphp 文件夹中有两个,一个在 binaries\conf 文件中,一个在 php\php_runningversion 中。我无法在其中找到`;extension=php_mssql.dll。感谢您的帮助
    • 使用php的phpinfo()函数查看php的配置。搜索字符串“Configuration File (php.ini) Path”或“Loaded Configuration File”。这将向您显示 php.ini 文件的位置,如果您无法找到 ;extension=php_mssql.dll,则只需添加带有其他扩展名的 extension=php_mssql.dll 行。并在进行更改后重新启动 Web 服务器。
    【解决方案3】:

    只是一个更新,在查看了该站点上的其他线程后,我找到了解决方案!以下问题的答案为我解决了这个问题:

    Trying to install MSSQL drivers with EasyPHP 12

    非常感谢大家的帮助,感谢原答案的负责人!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-07
      • 2014-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多