2014-01-23 34 views
0

我有一些託管公司土耳其字母和字符的許多網站,它工作正常。 更改託管公司並移動網站後,字符顯示爲(?或未知符號)。更換託管公司後,角色無法正確顯示?

我沒有改變代碼中的任何東西。

The previous hosting PHP version :5.3.25 
The current hosting PHP version :5.3.28 

注意:我在代碼中寫入變量,它們的土耳其值存儲在單獨的文件tr.lng中。

tr.lng:

<?php 
define("RANK","Sıra"); 
define("NAME","İsim"); 
define("TRAFFIC","Hit"); 
define("POINTS","Puan"); 
define("COMMENTS","Mesajlar"); 
define("COMMENT","Mesaj"); 
define("BONUS","Üye Bonusu"); 
define("ANALYSIS","İncele"); 
define("PERMISSION","Üye Kabul"); 
define("COMPANY","Site"); 
define("INFORMATION","Bilgi"); 
define("USERNAME","Kullanıcı"); 
define("REPLY","Cevap Yaz"); 
define("CAPTCHA","Doğrulama"); 
define("LINK","Giriş Linki"); 
define("NEWS","Haber"); 
define("DATE","Tarih"); 
define("ADD_REPLY","Cevap yaz"); 
define("ADD_COMMENT","Mesaj yaz"); 
?> 

我把我的代碼中的index.php 的第一行的文件,我在報頭使用:

<meta http-equiv="Content-Type" content="text/html; charset=latin-1" /> 

注意:如果我沒使用lang文件,我只是在土耳其語中編寫他們工作正常的代碼中的文字,但我需要將它們寫入文件以輕鬆更改語言。

我做錯了什麼?他們爲什麼要這樣展示?

回答

0

您需要在PHP中更改默認字符集。

設置所需的字符在php.ini文件中設置爲這樣:

default_charset = "utf-8"; /*Replace utf-8 with required characters set*/ 

該行可能會在您php.ini已經存在,但它可能已經指定了錯誤的字符集或註釋掉(線將前綴與;

+0

我嘗試過,但不工作:以下所有AR的e不工作(utf-8,ISO-8859-9,latin-1)。影響頁面但不解決問題只會讓事情變得更糟 – Basel

0

試試這個:<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-9" />