MySQL Türkçe Karakter Sorunu
Çok sorulan sorulardan biridir:
“neden veritabanına türkçe karakter kaydedemiyorum?” veya “veritabanı türkçeyi desteklemiyor mu?”
PHP ve MySQL kullanırken dikkat etmeniz gereken şeyler:
Sayfalarınızda 8859-9 dil kodlamasını kullanmayı düşünüyorsanız :
Yönetim sayfası ve ekrana bastığınız sayfanın “head” kısmında aşağıdaki kodları kullanın:
1 |
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" /> |
veritabanını da “latin5_turkish_ci” yapmalısınız.
Veritabanı bağlantısını da:
1 2 |
$baglan=mysql_connect("localhost","kullanıcıadı","şifre") or die("mysqle bağlanılamıyor"); mysql_select_db("veritabanıadı",$baglan) or die("veritabanı seçilemiyor"); |
Şeklinde yapmalısınız.
Eğer UTF 8 kodlamayı düşünüyorsanız:
Sayfanızın head kısmına
1 |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |
yukarıdaki kodu ekleyin.
veritabanında da “ut8_general_ci” seçtikten sonra veritabanı bağlantısı için
1 2 3 4 5 6 |
$baglan=mysql_connect("localhost","kullanıcıadı","şifre") or die("mysqle bağlanılamıyor"); mysql_select_db("veritabanıadı",$baglan) or die("veritabanı seçilemiyor"); mysql_query("SET NAMES utf8"); mysql_query("SET CHARACTER SET utf8"); mysql_query("SET COLLATION_CONNECTION='utf8_general_ci'"); ?> |
kodlarını kullanmalısınız.
Benim tavsiyem utf8 kullanın hangi ülkeye site yaparsanız yapın kodları değişmeniz gerekmeyecektir.
Böylece bir yazımızın daha sonuna geldik… kusurumuz olduysa affola…