龍巖易富通網絡科技有限公司

龍巖小程序開發(fā),龍巖分銷系統(tǒng)

PHP5.3.X連接MSSQL數(shù)據庫

2015.09.10 | 569閱讀 | 0條評論 | php

windows系統(tǒng)下,PHP5.3以上的版本已經不支持mssql擴展,所以如果你需要和sql server通信需要到http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx自行下載微軟提供的The SQL Server Driver for PHP。這是一個自解壓文件,解壓后會得到以下幾個文件:


php_sqlsrv_52_nts_vc6.dll

php_sqlsrv_52_ts_vc6.dll

php_sqlsrv_53_nts_vc6.dll

php_sqlsrv_53_nts_vc9.dll

php_sqlsrv_53_ts_vc6.dll

php_sqlsrv_53_ts_vc9.dll

php_sqlsrv_license.rtf


SQLServerDriverForPHP.chm


SQLServerDriverForPHP_Readme.htm

其中,52,53表示PHP的5.2.X和5.3.X的版本;nts表示非線和安全,ts表示線程安全;vc6表示使用Apache作為Web Server,vc9表示使用IIS作為Web Server。

根據您的配置,將相應的DLL文件拷貝到php安裝目錄的ext文件夾中,接下來打開php.ini,添加以下語句打開php_sqlsrv和php_pdo_sqlsrv擴展:

——————————————————–

[PHP_PDO_SQLSRV]

extension=php_pdo_sqlsrv_53_ts_vc6.dll

[PHP_SQLSRV]

extension=php_sqlsrv_53_ts_vc6.dll

—————————————————


這里的53表示的是php5.3,如果你的是5.2版,就改成52,如果你的PHP版本是線程安全的,那么你的PHP安裝目錄下應該有一個php5ts.dll,與這里的兩行語句對應,如果是php5nts.dll,那么上面的語句應該是:

—————————————————————-

[PHP_PDO_SQLSRV]

extension=php_pdo_sqlsrv_53_nts_vc6.dll

[PHP_SQLSRV]

extension=php_sqlsrv_53_nts_vc6.dll

—————————————————-


壓縮包里有各個版本對于的dll文件,大家可以去仔細核查。


開啟擴展后,重啟apache,這樣就可以連接sqlserver了,但是還有一點要注意,如果你沒有安裝Microsoft SQL Server 2008 R2 Native Client,必須去http://msdn.microsoft.com/en-us/library/cc296170(SQL.90).aspx下載安裝,因為微軟的這個擴展包需要這個支持。


一切妥當之后,就可以寫php代碼了,如果你下載了The SQL Server Driver for PHP,那么在解壓縮后的文件夾里有一個幫助文檔,你可以很容易的找到示例,在這里站長介紹一個簡單的例子:

<?php

//本地測試的服務名

$serverName = "(127.0.0.1)";

//使用sql server身份驗證,參數(shù)使用數(shù)組的形式,一次是用戶名,密碼,數(shù)據庫名

//如果你使用的是windows身份驗證,那么可以去掉用戶名和密碼

$connectionInfo = array( "UID"=>"root",

"PWD"=>"root2010″,

"Database"=>"master");


$conn = sqlsrv_connect( $serverName, $connectionInfo);


if( $conn )

{

echo "Connection established.\n";

}

else

{

echo "Connection could not be established.\n";

die( print_r( sqlsrv_errors(), true));

}

?>


如果連接不成功,重啟sql server再試。


贊 (

發(fā)表評論