Arkadaşlar elimde bir script var. Saatlerdir karakter sorununu çözmeye çalışıyorum. Sorun şu: veritabanına veri girildikten sonra türkçe karakterleri, verilerin girildiği yerde değiştiriyor ancak sitede düzgün gözüküyor. İkinci sefer değişiklik yapmadan değişen karakterlerle tekrar submit yaptığımızda karakterler daha değişik bir hal alıyor ama sitede gözüken türkçe karakterlerde bir sorun yine yok. Üçüncü defa aynı yerden devam edip submit yaptığımızda karakterler bu sefer daha değişik bir hal alıyor ve hemn verilerin girildiği paneldeki textareada karakterler bozuk çıkıyor hem de sitede "ı,ş,ğ" gibi karakterler bozuk çıkıyor.
Sayfanın meta taglarını iso8858-9 olarak ayarladım,
UTF olarak ayarladım,
Veritabanındaki verileri export edip tüm tablo başlıklarını tek tek latin1 - latin5 ve UTF olarak replace yapıp tekrar import ettim. Import ederken karakter eşlemini yine karakterleri hangi dilde kodladıysam ettiğim şekilde import ettim. ama şu karakterleri düzeltemedim.
Kullandığım script ArticleMS; ve bu script için birsürü arama yaptım. Birçok kişi bu sorundan şikayetçi ama şimdiye kadar çözüme ulaşan yok.
Ne yapabiliriz?
çözümlenemeyen mysql karakter sorunu
9
●1.137
- 24-12-2007, 14:43:19bunu denedinmi, birde bunu denerken 8859-9 u kullanmadan dene..Alıntı
- 24-12-2007, 15:06:28denedim malesef olmadı. tagların hepsini denedim.benikaydet adlı üyeden alıntı: mesajı görüntüle
ama şöyle bir sorun var. verileri girdikten sonra karakterleri neden her submit edişimde bir öncekisinden farklı çıkarıyor? sorun veritabanında olmalı - 24-12-2007, 15:44:13arkadşalar ilk defa bu kadar ısrarcıyım. bu sorunu daha önceden yaşamış ve çözmüş olan birileri varsa nasıl yaptıklarını paylaşsın. Saatlerdir denemediğim şey kalmadı desem de siz birşeyler atın ortaya. scriptim articlems ve bu sorun çok sık yaşanıyor; mutlka çözen vardır.
- 05-01-2008, 03:57:55-kd-onlinemusti adlı üyeden alıntı: mesajı görüntüle
güzel post kasıyosun devamını bekliyoruz senden
https://www.r10.net/search.php?searchid=2838897
-kd- - 05-01-2008, 16:01:34Bende bunun değişik bir sorununu yaşıyorum.
yazdığım scriptte, panelden textarea ile ekleme yapıyorsun. türkçe karakterler phpmyadmin den bakıldığından bozuk gözüküyor, ama sitede bu girilen verilerde bütün türkçe karakterler düzgün gözüküyor. benim için buraya kadar sorun yok ama sorun bundan sonra başlıyor. sitede url rewrite kullanıyorum yani linklerde türkçe karakterleri göstermemeliyim. ı ları i, ş leri s olarak göstermeliyim. mysql den veriyi çekip bir degisken olarak atıyorum.
$degisken = ereg_replace("ş","s",$degisken);
kodunu kullanıyorum ama değişkenin içinde ş olmasına karşın s olarak değişmiyor...
sorun nerde hala anlamış değilim, mysql e kaydedilirken değiştirilmesi sanırım.
çözüm bulmak lazım buna :S - 06-01-2008, 09:36:44Db ye kayıt ederken sayfanızın karakter setiyle db seti bağlantı seti aynı olursa hiçbir sıkıntı yaşamassınız.
Mesela sayfa
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Db bağlantı
mysql_query("SET NAMES 'utf8' COLLATE 'utf8_unicode_ci'");
Ve PHPymadmin vb. karşılaştırma utf8_unicode_ci
olursa karakterlerde , yazdırırken ,karakter işlemleri yaparken vs sorun yaşamassınız. Ama bir parcası eksik olursa sorun kaçınılmaz.
UTF8 sadece bir ornek LATIN5 vb de olabilir ama tüm site yapısı aynı karakter setiyle oluşturulmalıdır
Ayrıca d3x
$degisken = str_replace("ş","s",$degisken); buradaki ş db de nasıl kayıtlıysa yani bozuk haliyle aynı olmalı Explorer karakteri düzgün verebilir ama "ş" olarak ona php işlem yapmaz. birde öyle dene db de ş nasıl kayıtlıysa replace o şekilde ekle