程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP5.3.X連接MSSQL數據庫

PHP5.3.X連接MSSQL數據庫

編輯:關於PHP編程

windows系統下,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身份驗證,參數使用數組的形式,一次是用戶名,密碼,數據庫名
//如果你使用的是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再試。

 


摘自 Chris Mao的專欄

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved