Ortaklar Sunucu
  asdasdasd
 

PHP & HTML & MYSQL Türkçe Karakter Sorunu


Öncelikle sorunu tespit edelim.

.

HTML Türkçe Karakter Sorunu Çözümü

Sorun yaşadığınız site sadece HTML ise çözümü çok basit. Kodlarımızın <head> tagları arasına </head> şu kodları ekliyoruz.

1
<meta http-equiv="Content-Type" content="text/HTML; charset=utf-8" />

.

<head> tagları arasında </head> Başka bir karakter ayarlayan “charset” meta kodu var ise onu siliniz. 2 kod çakışır yine çözüm elde edemezsiniz.

Hala olmadı ise alttaki kodu alternatif olarak üstte verdiğim kod yerine yazabilirsiniz.

.

1
<META http-equiv=content-type content=text/html;charset=windows-1254>

.
.

PHP Türkçe Karakter Sorunu Çözümü

Sorun yaşadığınız site PHP ise. Kodlarımızın <head> tagları arasına </head> yine üstteki kodlardan birini ekliyoruz. Ancak php sayfanızda html kodu yok. Yani basit echo vs kodlardan ibaret ama türkçe karakterler hata veriyor. Onun için de alttaki kodu sayfanın en üst kısmına ekliyoruz.

1
header('Content-Type: text/html; charset=utf-8');

.

Sorun çözülmediyse , prosedür olaraktan <html> taglarını php sayfanıza eklemenizi öneririm. Örnek:

1
2
3
header('Content-Type: text/html; charset=utf-8');
 
echo "Türkçe Karakter";

.
.

MYSQL Türkçe Karakter Sorunu Çözümü

Eğer kullandığımız sayfadaki veriler veri tabanından geliyorsa işler biraz karışabilir. Ancak korkmayın :) tek dikkat etmeniz gereken veritabanından gelen verinin charset i ile kullandığımız sayfadaki charset in aynı olması.

Benim veritabanında kullandığım utf8_turkish_ci ;

.

.

.

Veri tabanını oluştururken bu karakter tipini seçin.

Daha sonra da sayfamızın <head> tagları arasına </head>  aşağıdaki kodu ekleyin.

1
<meta http-equiv="Content-Type" content="text/HTML; charset=utf-8" />

Geriye tek bir şey kaldı o da veri tabanı bağlantımızı yaptığımız kod kısmı.
Veritabanı bağlantımızı yaptığımız kodun altına.Alttaki kodu eklemek

1
mysql_query("SET COLLATION_CONNECTION = ´utf8_turkish_ci´ ");

Yani bağlantıdan sonra eklediğimizde bitmiş hali şuna benzer olucak.

1
2
3
4
mysqlconnect('localhost''root''password');
mysql_select_db('viritabani');
 
mysql_query("SET COLLATION_CONNECTION = ´utf8_turkish_ci´ ");

4.712 kez okundu02 Temmuz, 2012, Pazartesi

PaylaşFacebook'ta Paylaş Twitter'da Paylaş Google'da Paylaş Delicious'ta Paylaş Yazdır Rss


« « Ateri Salonu | SQL İnjection ve Korunma Yolları » » 
 
 
  Bugün 16 ziyaretçi (19 klik) kişi burdaydı!  
 
Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol