【问题标题】:Connect PHP with MS SQL SERVER将 PHP 与 MS SQL SERVER 连接
【发布时间】:2017-01-29 05:42:33
【问题描述】:

我是 PHP 新手,我正在尝试将我的 PHP 与 MS SQL SERVER 连接起来。 我用谷歌搜索了它,但没有找到任何好的解决方案。

我正在使用 PHP 版本:7.0.6

我已经下载了所需的扩展并将其放在 xampp/php/ext 文件夹中,并将这些行添加到 php.ini 文件

extension=php_pdo_sqlsrv_7_nts_x64.dll
extension=php_sqlsrv_7_ts_x64.dll
extension=php_pdo_sqlsrv_7_ts_x64.dll
extension=php_sqlsrv_7_nts_x64.dll

我正在使用此代码连接到我的服务器。

$myServer = "SERVER_IP"; 
$myUser = "USER_NAME"; 
$myPass = "PASSWORD"; 
$myDB = "DB_NAME"; 

$dbhandle = mssql_connect($myServer, $myUser, $myPass) or die("Couldn't connect to SQL Server on $myServer");

但是山雀告诉我这个错误:

Fatal error: Uncaught Error: Call to undefined function mssql_connect() in C:\xampp\htdocs\schedule\server.php:2 Stack trace: #0 {main} thrown in C:\xampp\htdocs\schedule\server.php on line 2

对此的任何帮助将不胜感激!

【问题讨论】:

  • 执行 phpinfo();说你已经安装了吗?
  • @bilal,你能不能在服务器控制台连接mssql。
  • @JapanGuy NO,phpinfo() 没有任何与 mssql 驱动程序相关的部分
  • @Bilal Zafar .. 见下面我的回答.. 你可以使用 PDO 来解决这个问题

标签: php sql-server apache pdo xampp


【解决方案1】:

你有 sqlsrv_connect 而不是 mssql_connect,尝试使用它。如果它不起作用,则意味着您的扩展程序有问题(您也可以使用 function_exists 来检查)。

更多信息:sqlsrv_connect:http://php.net/manual/ro/function.sqlsrv-connect.php

$serverName = "serverName\sqlexpress"; //serverName\instanceName
$connectionInfo = array( "Database"=>"database_name", "UID"=>"mssql_username", "PWD"=>"mssql_password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn ) {
     echo "Connection established.<br />";
}else{
     echo "Error connecting";
     die( print_r( sqlsrv_errors(), true));
}

【讨论】:

    【解决方案2】:

    我相信你必须添加那个 mssql 扩展才能使用它……但如果你愿意的话,你可以使用 PDO……点击此处的链接

    http://php.net/manual/en/ref.pdo-dblib.php

    【讨论】:

    • 我已经在文件夹和 php.ini 文件中添加了扩展名
    • 该扩展在 PHP 5.5.0 中被弃用,并在 PHP 7.0.0 中被删除。相反,应该使用 MySQLi 或 PDO_MySQL 扩展——来自 PHP.NET
    【解决方案3】:

    问题已解决:

    我用过extension=php_odbc.dll

    使用此代码:

    $server = '****';
        $user = '****';
        $pass = '****';
        //Define Port
        $port='Port=1433';
        $database = 'cargo_web';
    
        $connection_string = "DRIVER={SQL Server};SERVER=$server;$port;DATABASE=$database";
        $conn = odbc_connect($connection_string,$user,$pass);
        if ($conn) {
            echo "Connection established.";
        } else{
            die("Connection could not be established.");
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-04
      • 2019-06-23
      相关资源
      最近更新 更多