看板 PHP 關於我們 聯絡資訊
※ 引述《andreli (小狗跟正妹是我的死穴)》之銘言: : 之前開發使用ZF都可以正常顯示沒有問題, : 但是最近重裝系統後中文字全都變成亂碼了, : 其他非使用ZF開發的專案中文字都顯示沒有問題, : 目前自己除錯發現到的是: : 1. 直接從phpMyAdmin(pMA)裡面新增資料的話, 資料從pMA中看到的不是亂碼), : 但是從ZF的model取出來的畫面就會是亂碼。 : 2. 使用ZF的form寫入資料的話, 資料在phpMyAdmin看會是亂碼, : 但是網頁畫面正常顯示不是亂碼。 : 所以我想應該是兩個系統使用到不同的編碼, : 但是我也在config裡面設定了 : resources.db.params.driver_options.1002 = "SET NAMES utf8" : phyMyAdmin裡面的顯示資訊: : 伺服器: localhost (MySQL host info: localhost via TCP/IP) : 伺服器版本: 5.1.36-community-log : 通訊協定版本: 10 : 使用者: root@localhost : MySQL 文字編碼: UTF-8 Unicode (utf8) : meta也是顯示utf-8 : 不知道有沒有前輩發生過相同的事, 可以指點我一下, : 是我的資料庫原本的東西都是假utf8嗎... : 謝謝您的抽空瀏覽 先感謝大家的回覆, 大家說的我之前都用過, 但是不知道為什麼就是不成功, 最後我還是猜測自己資料庫應該是假UTF-8的方向解決, 也找到病原提供給以後的人做參考。 我的問題的確出在資料庫的編碼問題, 在MySQL輸入以下語法: SHOW VARIABLES LIKE '%character%'; 顯示出來我的character_set_database仍舊是latin1 character_set_client utf8 character_set_connection utf8 character_set_database latin1 但是照理來說SET NAMES應該是會更改上面三個參數的, 但是我不知道為何不行, 所以我就去更改了my.ini, 隨便找個位置加入: default-character-set=utf8 然後重開MySQL就OK了, 謝謝大家的回覆, 希望這篇文章可以對以後的人有幫助。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 221.120.2.70