2013-07-15 62 views
0

我的mysql數據庫被2個網站使用:第一個是在yii中構建的,第二個是通常的php製作網站。所以我在第二個站點有一個正常的註冊,在提交表單後,db的結果是不可讀的(用俄語),但是在輸出用戶配置文件後,結果恢復爲正常的俄語。但我的yii網站顯示的結果完全像db(不可讀)。我試圖通過utf8_encode對它進行編碼,結果也是不可讀的。那麼請告訴我如何避免yii中的這個編碼問題?將編碼從CP1252轉換爲UTF-8

+0

您的數據庫是utf8還是CP1252?我在我的Yii'配置文件的頂部:header('content-type:text/html; charset = utf-8');' – JorgeeFG

回答

0

在DB聲明編碼(UTF8或1252):

'db'=>array(
     'connectionString' => 'mysql:host=127.0.0.1;dbname=smartworkspace', 
     'emulatePrepare' => true, 
     'username' => 'root', 
     'password' => '010101', 
     'charset' => 'utf8', 
     'tablePrefix' => 'sw_' 
    ), 

並把一個頭,讓瀏覽器知道你用的是什麼編碼顯示頁面:

header('content-type: text/html; charset=utf-8'); 

我有它在我的配置文件中,因此它影響了其餘的所有內容。

+0

我明白你是對的,而且在我的配置中有相同的東西。但仍然是不可讀的符號。我會在腳本中尋找問題,也許在開始的時候會出錯。謝謝! – Zheka