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