CentOS安裝php-mssql

安裝 EPEL 後,幾乎所有套件都可以直接從 yum 安裝

Step 1:
# wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

Step 2:
# rpm -ivh epel-release-6-8.noarch.rpm //安裝取得的rpm檔案

Step 3:
# yum update    //更新yum的資源庫

Step 4:
PHP 連 MSSQL要裝三個套件
unixODBC
php-mssql
freetds
執行 yum insatll php-mssql 他會依套件相依性,會自動幫你安裝其他兩個!

# yum install php-mssql //安裝php-mssql

Step 5:
# service httpd restart    //重啟apache伺服器

常見問題:
SQLSTATE[HY000] Unable to connect: Adaptive Server is unavailable or does not exist (severity 9) 提示伺服器不存在
查看host, port是否有誤?是否是被selinux阻擋?
如果是後面一個原因,暫時的處理辦法就是先關掉,關掉方法如下:
打開 /etc/selinux/config ,將SELINUX設置為disabled,然後重新啟動,再試試看,基本就沒什麼問題了。

vi /etc/selinux/config
SELINUX=disabled

參考文件
http://www.pigo.idv.tw/archives/1336
http://blog.csdn.net/chenjiebin/article/details/7278304

資料庫連線測試:使用 PDO
try {
$hostname = "192.168.1.100″;
$port = "1433″;
$dbname = "PG";
$username = "user";
$pw = "123456″;
$dbh = new PDO ("dblib:host=$hostname:$port;dbname=$dbname","$username","$pw");
} catch (PDOException $e) {
echo "DB Error:" . $e->getMessage() . "\n";
exit;
}

$stmt = $dbh->prepare("SELECT * FROM users");
$stmt->execute();
while ($row = $stmt->fetch())
{
print_r($row);
}

解決寫入簡體中文出現亂碼:

  1. 把欄位的屬性設定成nvarchar、ntext。
  2. 寫入的內容前加上’N
    例 INSERT INTO MyTable (content) VALUES ( N‘簡體或亂碼的內容’ )
本篇發表於 Linux。將永久鏈結加入書籤。

發表迴響

您的電子郵件位址並不會被公開。 必要欄位標記為 *

*

您可以使用這些 HTML 標籤與屬性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>