PHP 5.4 成功連接 SQL Server 2005 ;SQLSRV30.EXE;php_sqlsrv_54_ts.dll
1、下載微軟提供的dll
地址:http://www.microsoft.com/en-us/download/details.aspx?id=20098
我下的SQLSRV30.EXE,這個exe是一個自解壓文件,下載后雙擊選路徑解壓會得到一堆dll和說明文件。
2、將對應自己php版本的dll文件copy到php ext目錄下
ts是指線程安全(ThreadSafe),nts是指線程不安全,得根據安裝的php版本來選擇,如果不確定,就分別嘗試一下;
我用的php5.4,就將php_sqlsrv_54_ts.dll復制到ext目錄下,
例如:D:\Program Files\PHP 5.4\ext
3、修改php.ini文件
增加一行: extension=php_sqlsrv_54_ts.dll
修改一行 : mssql.secure_connection = Off改為on
4、重啟apache
5、配置MS SQL Server2005
a、打開 SQL Server 配置管理器:SQL Server Configuration Manager,打開協議;
b、啟用“Named Pipes”和“TCP/IP”,默認是已禁用的;
c、右鍵點擊“TCP/IP”,選擇“屬性”,選擇“IP地址”,在”ALLIP“下的“TCP動態端口”后填寫1433;
d、重啟SQL Server。
備注:記得開啟sa登錄。
6、安裝Microsoft SQL Server 2012 Native Client.msi
根據自己系統在PHP服務器所在機器安裝Microsoft SQL Server 2012 Native Client.msi,分X64和X86的。
http://www.softpedia.com/get/Internet/Servers/Server-Tools/SQL-Server-Native-Client.shtml
此工具不支持XP系統哦,所以XP去用PHP5.3吧~
7、php代碼
<?
/*連接數據庫,5.4的函數不再是mssql_connect了:*/
$conInfo=array('Database'=>'osbst', 'UID'=>'sa', 'PWD'=>'123456');
$conn=sqlsrv_connect('192.168.1.208', $conInfo);
/*判斷連接成功與否:*/
if( $conn == false )
{
die( print_r( sqlsrv_errors(), true));
}
else
{
echo("yes<br>");
}
$table_name = 'table_name';
/*如果你牛叉的數據庫表名是中文,記得加上這句:*/
$table_name = iconv('UTF-8', 'GB2312', '牛叉的中文表名');
/*query語句:*/
$rs=sqlsrv_query($conn, "select * from ".$table_name);
if($rs == false)
{
echo("false<br>");
}
else
{
while($row = sqlsrv_fetch_array($rs))
{
print_r($row);
}
sqlsrv_free_stmt($rs);
sqlsrv_close($conn);
}
?>
