2012年7月16日 星期一

[PHP] 插入資料至MSSQL2008

由於PHP 5.3.6已沒有支援MSSQL, 因此上網找方法 (參詳 JT-client-Side)

說是要去下載微軟製做的 SQLServerDriverForPHP11

它上面給的連結好像已經失效

因此客倌請參詳 老洪的IT筆記本

裡面有說明和載點

下載下來之後, 把適用於自己的版本的dll檔放到/php5/ext資料夾裡面,

我發現還是不行一樣出現錯誤, 然後就在試著複製一份到system32裡面,


複製完之後請到/php5/php.ini 加入

[php_SQLSRV]

extension = php_sqlsrv_53_ts.dll (按各自版本不同而有異)

extension = php_pdo_sqlsrv_53_ts.dll (按各自版本不同而有異)

extension = php_pdo.dll


重啟apache, 開瀏覽器打http://localhost:port/phpinfo.php

就看到下面這個, 這就表示php和MSSQL可以連線囉














寫段程式碼測試看看, 結果是OK的~!
<?php
header('Content-type: text/html; charset=utf-8');
$serverName = "127.0.0.1";
$uid = "sa";
$pwd= "密碼";
$connectionInfo = array("UID"=>$uid, "PWD"=>$pwd, "Database"=>"Topology","CharacterSet"=>"UTF-8");

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

if($connect == false)
{
echo "Unable to connect.<br/>";
die(print_r(sqlsrv_errors(),true));
}else
{
echo " Connected!<br />";
}

$sqlcmd = "insert into node_info values(2,3,5,6)";
$stmt = sqlsrv_query($connect, $sqlcmd);
/*
$row = sqlsrv_fetch_array($stmt);
echo $row[0]."<br />";
echo $row[1]."<br />";
echo $row[2]."<br />";
echo $row[3]."<br />";
*/
sqlsrv_free_stmt($stmt);
sqlsrv_close($connect);

?>


沒有留言:

張貼留言