2015-06-22 108 views
1

我收到了如下錯誤:錯誤連接MSSQL使用PHP

PHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[08001]: [Microsoft][ODBC Driver 11 for SQL Server]SQL Server Network Interfaces: Connection string is not valid [87]. '

我的代碼如下:

$this->link = new PDO(
       "sqlsrv:server=$this->serverName:$this->port;Database=$this->db", 
       "$this->uid", 
       "$this->pwd" 
       ); 

我希望有人可以告訴我是什麼原因造成這個錯誤。在此之前,我使用dblib而不是sqlsrv

"dblib:host=$this->serverName:$this->port;dbname=$this->db" 

我在Apache 2.4.12和PHP 5.5.24(它們都是x86)上使用XAMMP。我有php_pdo_sqlsrv_55_ts.dll和php_sqlsrv_55_ts.dll。我也爲SQL Server-x64使用Microsoft ODBC驅動程序11。

回答

1

將其更改爲:

$this->link = new PDO(
      "sqlsrv:Server={$this->serverName},{$this->port};Database={$this->db};", 
      $this->uid, 
      $this->pwd 
      ); 

SQL Server的默認端口是1433。注意大括號,它們允許類變量。