【问题标题】:php fail to open a sqlserver 2000 databasephp 无法打开 sqlserver 2000 数据库
【发布时间】:2010-03-19 06:22:21
【问题描述】:

我可以用sql server management studio打开一个sqlserver 2000数据库,

但我无法使用相同的用户名和密码在 php 页面中打开相同的数据库。

有什么问题?

if(!$dbSource->open("192.168.4.241:1433","sa","sa","NorthWind"))
{
    echo  "Fail to open the sql server 2000 database";
}

-----------------------

  function open($db_server, $db_user, $db_password, $db_name) 
  {

    $this->conn = mssql_connect($db_server, $db_user, $db_password);
    if(!$this->conn)
    {
        return false;
    }
    @mssql_select_db($db_name, $this->conn);
    return true;
  }

【问题讨论】:

    标签: php sql-server


    【解决方案1】:

    mssql_get_last_message()告诉你问题出在哪里。

      function open($db_server, $db_user, $db_password, $db_name)
      {
        $this->conn = mssql_connect($db_server, $db_user, $db_password);
        if(!$this->conn)
        {
          echo '<pre>Debug: mssql_connect failed, reason: ', htmlspecialchars(mssql_get_last_message()), '</pre>';
          return false;
        }
        if ( false===@mssql_select_db($db_name, $this->conn) ) {
          echo '<pre>Debug: mssql_select_db failed, reason: ', htmlspecialchars(mssql_get_last_message()), '</pre>';
          return false;
        }
        return true;
      }
    

    另见:mssql_min_error_severity()

    【讨论】:

    • 谢谢。我使用 ODBC 成功连接 sql server。但是 mssql_connect() 仍然不起作用,它没有显示任何错误消息,只是空白页。
    • 谢谢。我将 php.ini secure_connection 设置为 Off,并解决了问题。
    猜你喜欢
    • 2015-06-22
    • 2011-03-23
    • 1970-01-01
    • 2018-02-05
    • 2013-04-20
    • 2023-03-06
    相关资源
    最近更新 更多