Merhaba, MySQL bağlantısı sağlandıktan sonra içinde bulunduğunuz oturumda "set names utf8 collate utf8_turkish_ci" direktifini verirseniz karakter karşılaştırmaları için Türkçe karakter haritasını kullanacaktır.
Kolay gelsin.. 17 Mayıs 2011 17:22 tarihinde "Mahir B. Aşut" <[email protected]> yazdı: > Bu bağlamda "charset" konusuna bir soru ilave edebilir miyim ? > > MySQL'den UTF-8 veriyi doğrudan SQL ile sorguladığınızda Türkçe > karakterlerde büyük küçük harf ayrımına takılıyor (doğal olarak) ve mesela > içerisinde küçük "ş" harfi bulunan bir sorgu büyük "Ş" içeren sonuçları > döndürmüyor. > > Bunun -programatik çözümler dışında- veritabanı seviyesinde bir çözümünü > biliyor musunuz ? > > Teşekkürler, > Mahir > > 17-05-2011 15:57, mehmet yazmış: > > Merhaba, > > Listelerden takip ettiğim kadarı ile bir süredir karakter seti ile > ilgili sorun yaşıyorsunuz. > > Aslında defalarca yaşadığınız sorunu çözen yanıtlar aldınız ancak > sanıyorum bir noktada bir şeyler yanlış gidiyor. > > Bu sorunu bir zincir gibi düşünün. Zincirin bir halkası kırıldığında > kalan halkalarda utf8'i 'force' etmek işe yaramıyor. > > Adım adım gidecek olursak, > > (önceki mesajınızdan mysql kullandığınızı hatırlıyorum) > > 1. mysql veritabanı, tablolar ve alanlar utf8 olarak yaratılmış mı? > 2. tabloların içerisindeki veri utf8 olarak mı kaydedilmiş? > 3. mysql bağlantısı açtığınsa oturum utf8 olarak set edilmiş mi? (set > names utf8) > 4. mysql'den aldığın veriyi istemciye gönderirken, json ise header'da > content-type içerisinde utf8 belirttiniz mi, html sunuyorsanız meta > tag'de utf8 belirttiniz mi? > > Bu soruların hepsinin cevabı evet ise sorunsuz bir şekilde Türkçe > metinleri görüntüleyebiliyor olmanız lazım. > > Form'dan veri girişi yapılan html sayfalarında meta tag'leri arasında > utf8 olarak bildirimde bulunmamış iseniz formdan gelen verinin kendisi > utf8 kodlanmış olmayabilir(çoğu varsayılan utf8 artık ama...) bu > veriyi utf8 olarak tanımlanmış mysql oturumunuzda, utf8 olan tablolara > kaydetseniz de, kaydettiğiniz veri utf8 kodlanmamış olduğundan > sorunlar devam edecek. > > Eskiden girmiş olduğunuz herhangi bir karakter setindeki veriyi iconv > ile utf8'e çevirip, tüm ortamlarda utf8 için gerekli tanımları yapıp > tekrar denemenizin sorununuzu çözeceğini sanıyorum. > > html ve php dosyalarının kodlanması, veritabanından gelen dinamik > içeriğin kodlamasına etki etmez. Ancak meta-tag'de utf8 belirttiğimiz > için dosya içerisindeki karakterlerinde utf8 olarak kodlanmış olması > gerekiyor. > > Kolay gelsin... > > > 17 Mayıs 2011 15:41 tarihinde Emin Tepe <[email protected]> yazdı: > > serdar bey, > dosyalar da utf-8, gelişmiş text editor de tüm dosyaları açıp utf-8 olarak > kaydettim yani o konuda sıkıntı yok. > ama bunları yapmama rağmen neden hala json verileri bozuk gelir. > > 17 Mayıs 2011 15:29 tarihinde Serdar KÖYLÜ <[email protected]> yazdı: > > Büyük ihtimalle siz header için "charset: utf-8" gibi bir şey yaptınız > sadece. Ama HTML içeriği UTF-8 değilde, orjinal karakter seti neydiyse > o halde kaldı. > > iconv --from-code=ISO-8859-1 --to-code=UTF-8 ./eski.html > ./yeni.html > > gibi bir şeyle, dosyalardaki eski karakterleri yenisiyle değiştirmeniz > gerekiyor sanıyorum. > > > > 2011/5/17 Emin Tepe <[email protected]>: > > arkadaşlar, > html dosyalarının charseti utf-8 yaptım ve bir veriyi güncelledim. > tekrar > json ile veriyi çektiğimde gene karakterlerde problem var. sorun > çıkıyor. > mesela > > Rüzgar ÖZDEMYR > Ruhullah ÇELYK > Müslim ATSIZ > Muhammed BOZO?LAN > > şeklinde geliyor. aslı > > Rüzgar ÖZDEMİR > Ruhullah ÇELİK > Müslim ATSIZ > Muhammed BOZOĞLAN > > olması lazım. > > neden oluyor acaba :( > > > > 17 Mayıs 2011 14:30 tarihinde Bülent Aydin <[email protected]> yazdı: > > utf-8 + > > 2011/5/17 Nuri AKMAN <[email protected]> > > Ömer Bey, > > Veri tabanı karakter seti de UTF8 olmalı değil mi? > > Bir sorum daha olacak size: .html ve .php doslayarının encoding'i ne > olmalı? UTF8 without BOM mu? > > Selamlar, > Nuri Akman > > > 2011/5/17 Omer Barlas <[email protected]> > > On 17-05-2011 11:33, Emin Tepe wrote: > > arkadaşlar, > sizlerden birşey öğrenmek istiyorum. web sitelerinde default olarak > charset olarak utf-8 mi kullanmak lazım yoksa farklı charsetler > kullanılır mı? > farklı charset kullanılırsa avantaşları nedir dezavantajları nedir. > > databaseden json ile cektiğim verilerden bir sürü sıkıntı yaşadım, > karakterler bozuk çıkıyor, iconv ile düzelmiyor vs. charset olarak > iso-8859-9 kullanmıştım, insert ederkende bu charsetli sayfadan > insert > yaptığım için aynı charset ile inser etmiştir. > > utf-8 kesin çözüm, sonuçta w3c ve email standartlarına göre her > istemci > UTF-8 okuyabilecek şekilde üretilmeli, ve şu anda da hemen hemen tüm > işletim sistemleri -evet, windows dahil- UTF-8 tabanlı çalışıyor. > > Normalde ISO kodlu sistemlerde her karakter 1 byte tutarken, UTF-8'de > her karakter 1 veya 2 byte yer kaplıyor, bu da doğal olarak yer > ihtiyacını arttırıyor. Eğer yoğun bir şekilde metin tutuyorsan (bkz. > devasa forumlar) ve DB'nin alanı hosting vs sıkıntısından dolayı çok > dert oluyorsa ancak o zaman ISO koduna gitmeyi tavsiye ederim. > > çok detaylı bir karşılaştırma için; > http://en.wikipedia.org/wiki/UTF-8 > > -- > Omer Barlas > [email protected] > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > > > -- > > Bülent Aydın > BSc.Math.Engineering, MBA > > > OpenPoint, > with creative ideas > > IT Consultancy & Development Services > Aschaffenburg/ Germany > > Tel: +49 6021 1304664 > Mobile : 0163 7870836 > e-mail: [email protected] > Web Site: http://www.openpoint.de > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > _______________________________________________ Linux-programlama mailing list [email protected] https://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: http://liste.linux.org.tr/kurallar.php
