zencart模板出現(xiàn)亂碼怎么解決?
(1) 數(shù)據(jù)庫造成的亂碼問題。在后臺錄入數(shù)據(jù)時和前臺展示時,頁面的編碼不一致可能導(dǎo)致該問題。例如后臺管理錄入數(shù)據(jù)時使用的編碼為utf-8,而前臺顯示時, 編碼為iso-8859-7,則會產(chǎn)生亂碼。解決辦法,將后臺語言包中的charset設(shè)置為 iso-8859-7,或者將前臺語言包中的charset設(shè)置為 utf-8。對單語種的站點(diǎn)可以采取這種方式解決。宇塵網(wǎng)絡(luò)幫助中心域名知識|虛擬主機(jī)知識|VPS主機(jī)知識|服務(wù)器知識|網(wǎng)站建設(shè)知識|網(wǎng)絡(luò)推廣
(2) 采取utf-8編碼格式后,因?yàn)橐话銖木W(wǎng)上下載下來的語言包中的文件都不是utf-8格式,可能也會導(dǎo)致一部分語言出現(xiàn)亂碼。所以,最好將下載下來的語言 包全部轉(zhuǎn)化為utf-8文件格式,你可以用文本編輯器,dreamweaver,或者其他編輯器將語言包中的每個文件轉(zhuǎn)化為 utf-8 格式。如果覺得麻煩的話,可以下載一個文件編碼批量轉(zhuǎn)化工具(EncodingConvertor),該工具可以將一個文件夾中所有的文件進(jìn)行編碼轉(zhuǎn)化。 轉(zhuǎn)化的時候要注意,原編碼一定要選擇正確,如果不知道原編碼的話,打開語言包中的 language.php(請將language替換為語言名字,如english.php,greek.php), 看看CHARSET的定義是什么。仿牌空間、香港月付空間、韓國月付空間、日本月付空間、荷蘭VPS、香港VPS
(3) 對于多語種的站點(diǎn),若直接將站點(diǎn)的編碼修改為 iso-8858-7,則有可能會導(dǎo)致其他語言的亂碼問題。例如:希臘的編碼為 iso-8858-7,土耳其的編碼為 iso-8858-9,若在希臘環(huán)境下編輯產(chǎn)品信息,則此時錄入數(shù)據(jù)庫時的編碼為 iso-8858-7,土耳其語言也被迫以 iso-8858-7的編碼錄入數(shù)據(jù)庫,而在前臺又不得不以 iso-8858-9的編碼來展示土耳其語言,這樣以來土耳其語言就可能出現(xiàn)亂碼。解決辦法,多余多語種的站點(diǎn),全部采取 utf-8的編碼格式。
美國月付空間、月付美國空間、美國VPS、美國服務(wù)器租用
(4) 將編碼轉(zhuǎn)化為 utf-8后,可能會導(dǎo)致頁面比較錯了的現(xiàn)象,這是因?yàn)槲募?/FONT>utf-8格式保存時,自動在文件開頭加上了一個 unicode簽名(BOM, Byte Order Mark), 這是三個不可見的字符(0xEF 0xBB 0xBF),用于讓一些編輯軟件(如記事本)知道這個文件是 以 utf-8編碼的。php在 require以utf-8編碼的文件時,卻沒有能夠忽略這幾個字符,結(jié)果導(dǎo)致這幾個字符作為輸出的一部分。這時若要時網(wǎng)頁布局正常,則需要將這個BOM 去掉,用dreamweaver打開文件,按 ctrl+J,在標(biāo)題/編碼選項(xiàng)卡中取消選中“包括Unicode簽名”,再保存。也可以使用下面的代碼來批量處理一個文件夾中的BOM。
更多技術(shù)知識,更多網(wǎng)絡(luò)服務(wù),盡在宇塵網(wǎng)絡(luò)。我們的成長,離不開你們的支持,宇塵網(wǎng)絡(luò),歡迎您的訪問。