Galibarda

Veysel Bozdoğanoğlu

php mysql türkçe karakter sorunu

without comments

En son söylemem gerekeni en başta söyleyim. Bu makaleyi okuyorsanız muhtemelen benim aşağıda anlatacağım ayarları yapmış ve hala sonuç alamamışsınızdır. Aslında ne php nin ne de mysql in türkçe karekter sorunu yok.  Ayarları yaptınız ve hala düzelmediyse sorun editorunuz kodlama biçimindedir. Bu sorunu çözmek içik kullandığınız metin editorunun varsayılan kodlamasının utf-8 withou BOM yada türkçesi bom suz utf-8 olarak ayarladığınızdan emin olun. Bom suz ayarlayın ki, ilerde bir de çerez-oturum sorunu yaşamayasınız diye.

Gelelim ayarlara..

1-)Browser ayarı..

Bu ayar aslında en basittidir. web siteniz html kodlarına

<meta content=”text/html; charset=utf-8″ http-equiv=”content-Type”>

2-)Mysql Ayarı

a-)Öncelikle mysql de veritabanı oluştururken mysql in karakter setini UTF-8_general_ci yapın.

php Mysql Türkçe Karekter Sorunu

php Mysql Türkçe Karekter Sorunu

 
b-)Klasik bir php mysql bağlantı kodu şu şekildedir

mysql_connect("localhost", "mysql_user", "mysql_password") or
    die("Could not connect: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    printf("ID: %s  Name: %s", $row["id"], $row["name"]);
}

mysql_free_result($result);

 

bu kodun select_db kısmından sonra yani veritabanı tablo adı seçildikten sonra aşağıdaki kodu ekleyin

mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");

Şu şekilde görünmeli

mysql_connect("localhost", "mysql_user", "mysql_password") or
    die("Could not connect: " . mysql_error());
mysql_select_db("mydb");
//sonradan eklenen kodlar
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");
$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    printf("ID: %s  Name: %s", $row["id"], $row["name"]);
}

mysql_free_result($result);

Tüm bunları uyguladım ama hala sorun yaşıyorum diyorsanız makalenin en başına geri dönüp metin editorunuzle ilgili ayarları yapın.
Eğer aynı anda benim gibi birden fazla editor kullanıyorsanız muhtemelen yine sorun yaşayacaksınız.
Kolay gelsin.

Written by waycell

Aralık 5th, 2011 at 11:52 pm

Posted in mysql,PHP

Leave a Reply