Tarih: 2008-02-28, 12:00:55 Mesaj konusu: Saçma bi türkçe karakter sorunu!
Merhaba aradaşlar;
Nuke-7.6+3.3+2.0.22 kullanıyorum. Şimdiye kadar aldığım domainlerde sorun olmuyordu. Hosting firmam yeni server kurmuş sanırım yeni domainleri oradan veriyor. Ve yeni açtıım sitelerde PHP5 kullanılıyormuş. Öncekiler PHP4 müş.
Site dilini ingilizce olarak ayarladığımda karakter kodlaması ISO-8859-1 olduğunda türkçe karakterleri gösteriyor. Mysql karakter kodlması latin5 olarak ayarlı. Yani site dili ingilizcede iken veritabanındaki türkçe karakterleri site düzgün gösteriyor fakat site ingilizce dilinde...
Siteyi türkçeye aldığımda karakterler yine türkçe görünüyor fakat veritabanını update edecek birşey yaptığımda tüm türkçe karakterler ? oluyor. Yani site karakter seti windows-1254 olduğunda mysql e türkçe karakter girilmiyor. Sitede arama yaptım ama snuç bulamadım. Yardımcı olabilecek arkadaşlar var mı?
Bunun senin sitenle yada database'in le alakası yok hostcuna söyle gerekli düzeltmeleri o yapsın. Sende hata yok çünkü. Daha önceden düzgün çalışan site taşımadan sonra bu hale geldiyse hakkını ara kardeşim.
Taşıma yapılmadı. Aynı hosting firmasından yeni domainler aldım. Yeni aldıklarım PHP5 kurulu serverdaymış. Eski sitelerim şu an gayet güzel çalışıyor. Bu yeni serverdaki sitelerde bi anormallik var. Ben her yerde çözüm arıyorum şu an. dediğim gibi karakter kodunu ISO yapınca düzeliyor ama veritabanında olmayıp da html de olan tr karakterler bu sefer sapıtıyor. Deli olacağım yaa!!!
Bak şimdi arkadaşım domain ve host ikiside farklı denklemler. Domaini dilediğin yerden al Domainle alındığı yerin bir etkisi olmas. Domain bir köprüdür bizim gitmek istediğimiz yere ulaştırır sadece. Köprünün bir ucunda sen varsın diğer ucunda ise senin dosyalarının barındığı sunucu. Yani o köprü sadece seni sunucuya ulaştırır bunun domainle bir ilgisi yok tamamen hostunla alakalı. :)
Domain de host da aynı yerden arkadaşım. O kadar malumatım var. Doğru hata bende domain yazmamam lazımdı. Host yazmam gererkirdi. Her neyse siteyi ingilizce yapınca mysql e karakterler sanırım utf ye çevrilip giriyor. Ama windows-1254 yapınca yai türkçeye alınca site yönetim panelinden mysql e girilen her türkçe veri ? olarak giriliyor. yani phpmyadminden tabloya bakınca karakter ? görünüyor. Ama phpmyadminden türkçe karakter girsen site türkçede de olsa karakter türkçe görünüyor.
Yani sorun site türkçe iken mysql e türkçe karakter girilememesi...
Mysql in karakter kodlamasını değiştirmeyi denesene birde, tek tek dene bakalım hangi karakterde sorun çıkarmayacak onu bir çöz. Sonuca göre bir çözüm üretelim.
Kayıt: Jan 09, 2006 Mesajlar: 827 Konum: Ordu/Ankara
Tarih: 2008-02-28, 12:52:29 Mesaj konusu:
phpmyadmin tablonun dil setini utf8_general_ci olarak seç ve sql dasyanı yükle. daha sonra mainfile.php dosyanı aç ve şu satırı bul
@require_once(INCLUDE_PATH."includes/sql_layer.php");
altına şu kodu ekle
@mysql_query("SET NAMES 'latin5'");
bu şekilde türkçe karakter sorunu yaşamazsın.
site başlığında türkçe karakter kullanırsan onlar görünmeyecektir. düzeltmek için
admin/modules/settings.php dosyanı aç ve an altta şu kodları bul
nuke versiyonlarında bu bölüm farklılık gösterebilir. yaptığımız en basit anlatımıyla htmlentities kodlarını htmlspecialchars ile değiştirdik.
Kolay gelsin
nuke_config tablosunu utf8 de yaptım latin1 de latin5 de yaptım ama siteye bakarsan title daki tr karakterler ??? oluyor. Host ise PHP5 den diyor ne alakaysa...
karakter kodlamasını lang_turkish ten değiştirsek yani utf yi gösterecek ve yazacak kod hangisidir?
mesela benim ingilizce de : define("_CHARSET","ISO-8859-1");
türkçede : define("_CHARSET","windows-1254");
satırı var. türkçedeki satırı ne yapsak da gösterir ikisini de. iki satır da eklesem sapıtır mı acaba???
Tarih: 2008-02-28, 13:12:22 Mesaj konusu: Re: Saçma bi türkçe karakter sorunu!
Tamamdır! Title bile düzeldi bu eklemeyle! Allah razı olsun hocam sağolasın...
Alıntı:
phpmyadmin tablonun dil setini utf8_general_ci olarak seç ve sql dasyanı yükle. daha sonra mainfile.php dosyanı aç ve şu satırı bul
@require_once(INCLUDE_PATH."includes/sql_layer.php");
altına şu kodu ekle
@mysql_query("SET NAMES 'latin5'");
bu şekilde türkçe karakter sorunu yaşamazsın.
sorunumu çözdü gibi görünüyor! Bakalım başka yerlerde de sorun olacak mı...
Bu forumda yeni başlıklar açamazsınız Bu forumdaki başlıklara cevap veremezsiniz Bu forumdaki mesajlarınızı değiştiremezsiniz Bu forumdaki mesajlarınızı silemezsiniz Bu forumdaki anketlerde oy kullanamazsınız