phpstudy連接SQL Server 2008數據庫 以及 php使用sql server出現亂碼解決方式


開始也嘗試自己配置php安裝環境,找到一個詳細的百度經驗http://jingyan.baidu.com/article/154b46315242b328ca8f4101.html,前面有問題也一一去解決了,但最后還是死在Apache啟動失敗上(估計也是端口問題)。

然后選擇了使用phpstudy集成環境。在phpstudy連接sql server 2008數據庫這個問題上看了不少帖(大多數是直接寫php連接sql server數據庫的操作,也是亂的很),這里結合我的操作過程總結了一下:

  • 確保phpstudy成功啟動,在PHP擴展里勾選php_sqlsrv和php_pdo_sqlsrv兩項;

  • 安裝Microsoft SQL Server 2008 Native Client,這一步很重要。
  • 測試,在根目錄添加index.php文件,代碼內容如下:
  •   
     1 <?php
     2 $serverName = "填數據庫服務器地址"; //數據庫服務器地址
     3 $uid = "填數據庫用戶名"; //數據庫用戶名
     4 $pwd = "填數據庫密碼"; //數據庫密碼
     5  
     6 $connectionInfo = array("UID"=>$uid, "PWD"=>$pwd, "Database"=>"填數據庫名稱");
     7 $conn = sqlsrv_connect( $serverName, $connectionInfo);
     8  
     9 if( $conn == false){
    10     echo "連接失敗!";
    11     die( print_r( sqlsrv_errors(), true));
    12 }else{
    13     echo "連接成功!";
    14 }
    15 ?>

     

 

  2016年8月1日補充:

  后續再次配置鏈接時,出現其他問題:

  • 首先,是sqlsrv的擴展無法實現,這個和phpstudy的設置有關,我反復試了發現在“非服務模式”下,成功概率高一些;

  • 而面對啟動時端口被占用的情況,在進行端口檢測時,使用bat檢測,再根據PID,在任務管理器中,關閉相應程序,重啟phpstudy,選擇“非服務模式”,一般來說就可以在,phpinfo中看到開啟了sqlsrv的擴展了;

  

  • 我的php版本是5.3,使用的dll文件如下圖,接下來重啟phpstudy,錯誤解決;

  • 補充一點,在編寫php過程中發現,sql server調出來的數據是gb2312,而我前端寫有php的文件是utf-8格式,數據輸出,常常出現亂碼,這里我對數據進行了轉換,下圖是轉換函數,在數據輸出時調用;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM