-- Bilgisayar, Web Yazılım & Tasarım

PHP & MySQL Türkçe karakter sorunu ve çözümü

MySQL Türkçe Karakter problemi

Merhabalar.

MySQL veritabanıyla başlangıç seviyesinde dahi uğraşmışsanız sıkıntılı noktalardan birinin karakter kodlamaları olduğunu görmüşsünüzdür. Tabi bu sıkıntı aslında veritabanıyla direk alakalı değil, çoğunluğu geliştirici yani biz kaynaklı durumlar.

İlk MySQL çalışmamda PHP ile bazı form bilgilerini veritabanında saklamayı deniyordum. Fakat formda düzgün görünen tüm Türkçe karakterler MySQL’de incelediğimde soldaki gibi görünüyordu. O dönem çok üstünde durmadığım bu sıkıntı bu gün de bir çalışmada karşıma çıkınca çözüm arayışına gittim, aslında çok da zor olmayan bir çözüm mevcuttu ve deneyip teyit ettim , kesinlikle başarılı 🙂

Karakter kodlamaları, UTF8 vs. terimlerinin ayrıntılarına girmeden kısaca çözüm yolunu anlatıyorum.

Öncelikle veritabanı bağlantısını gerçekleştirdiğimiz .php dosyamızı Notepad++ ile açalım. Notepad++ açık kaynak kodlu ücretsiz bir kod yazılımdır. Kısa ve basit çalışmalar için oldukça işinize yarayabilir. Buradan indirebilirsiniz.

İndirip programı çalıştırdıktan sonra veritabanı bağlantısı yapan php dosyalarınızı Notepad++  ile açalım. Üst menüden

KODLAMA -> UTF-8 (BOM’SUZ) olarak Kodla  seçeneğini seçelim. Bu işlemden sonra mysql_connection fonksiyonu ile bağlantı kurduğumuz satırın hemen altına

mysql_query("SET NAMES UTF8");
kodunu ekliyoruz.

Bu işlemlerden sonra php dosyamızı kaydedip MySQL arayüzüne geçerek oluşturduğumuz tablolardaki karakter kodlamasını ” utf8_general_ci ” olarak belirliyoruz. Bu işlemlerden sonra gönderdiğiniz verilerdeki Türkçe karakterlerin sorunsuzca veritabanında saklanacaktır.

Bu sorunu çözmemi sağlayan yazısı için Selim Yılmaz’a teşekkürler. İlgili kaynağa buradan ulaşabilirsiniz.

İyi çalışmalar – Ersin YILDIZ

Yorumla

Yorum