Html, Php ve Mysql’de Türkçe Karekteri Sorunu Çözümü

Herkesinde bildiği gibi html, php ve mysql bağlantılı çalışmalar yaptığımız hemen hemen türkçe karakter sorunuyla birçok kişi karşılaşmıştır. Aslında bunun çözümü gayet basit yapmanız gerekenleri aşağıda yazacağım.

Html sayfasında <head> etiketi arasına sayfanın desteklediği dil kodunu yazmalısınız. Eğer kodu <head> etiketi arasına yazarsanız html sayfanızdaki karakter sorunları çözülmüş olacaktır.

<head>

<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-9″ />

</head>

Bir de html sorunun bir benzeride php web sayfaları için eklemek gerekecektir. Bunun içinde aynı şekilde <head> etiketi arasına aşağıdaki kodu ekleyip sorunu çözebilirsiniz.

<head>

header(“Content-Type: text/html; charset=ISO-8859-9″);

</head>

Aşağıdaki yazacağım kod ile de veri tabanı bağlantısı yaptığınızda, veri tabanından çektiğimiz bilgileri türkçe karakter sorununa çözüm olacaktır.

$dizin=localhost; // (örn : localhost)
 $kullanici=root; // (örn : root)
 $sifre=sifre; // (örn : sifre)
 $vt=veritabani; // (örn : defter)
$baglanti=mysql_connect ($dizin,$kullanici,$sifre) or die (“Hata”);
 $veritabani=mysql_select_db($vt) or die (“Hata”);
 mysql_query(“SET NAMES ‘latin5′”);
 mysql_query(“SET CHARACTER SET latin5″);
 mysql_query(“SET COLLATION_CONNECTION = ‘latin5_turkish_ci’”);

Bir de son olarak php sayfasından formdan gelen verileri türkçe karakter sorunu yaşamamak için php de bulunan str_replace fonksiyonunu kullanarak halledebilirsiniz. Formdan gelen mesaj değişkeninin içerisinde bulunan türkçe karakterler düzeltilir. Bunun için aşağıdaki kodu kullanabilirsiniz.

$mesaj = $_POST['mesaj'];

$tr = array(‘Ç’, ‘ç’, ‘Ğ’, ‘ğ’, ‘ı’, ‘İ’, ‘Ö’, ‘ö’, ‘Ş’, ‘ş’, ‘Ü’, ‘ü’);

$kod = array(‘& Ccedil;’, ‘& ccedil;’, ‘& #286;’, ‘& #287;’, ‘& #305;’, ‘& #304;’, ‘& Ouml;’, ‘& ouml;’, ‘& #350;’, ‘& #351;’, ‘& Uuml;’, ‘& uuml;’);

$veri = str_replace($tr, $kod, $mesaj);

3 kişi bunu beğendi

Diğer Benzer Yazılar: