PHP utf-8 problemi

0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
Daha önce sorulduğunu sanmadığımdan aramadan soruyorum.

PHP'de GET olarak gelen değişkeni ekrana utf php header yazdıktan sonra yazdırdığım zaman türkçe karakter sorunu olmuyor.

Ama o isimde bir türkçe karakterli php dosya include etmeye çalıştığımda include var olan dosyayı bulamıyor. Türkçe karakter düzgün olmasına rağmen.

Aynı şey ISO karakter setinde olmuyor ve dosyayı bulup include ediyor.

Nedir UTF nin derdi ya
 
Root
Root
İyinet Ekibi
Onaylı Üye
Katılım
2 Eylül 2002
Mesajlar
5,043
Tepki puanı
79
Konum
SEO
Daha önce sorulduğunu sanmadığımdan aramadan soruyorum.

PHP'de GET olarak gelen değişkeni ekrana utf php header yazdıktan sonra yazdırdığım zaman türkçe karakter sorunu olmuyor.

Ama o isimde bir türkçe karakterli php dosya include etmeye çalıştığımda include var olan dosyayı bulamıyor. Türkçe karakter düzgün olmasına rağmen.

Aynı şey ISO karakter setinde olmuyor ve dosyayı bulup include ediyor.

Nedir UTF nin derdi ya


Bildigim kadari ile PHP deki UTF-8, Turkce karakterleri desteklemiyor(du)?.
 
0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
Ceasar cevap versene seni bekliyoruz :)
 
0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Tepki puanı
7
:) Ben her zaman utf-8 kullanıyorum artık hiç o şekilde bir sorun yaşamadım.
 
0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
işte bende her zaman utf kullanmak istiyorum ama dosyaları include ederken o isimde dosyayı bulamıyor türkçe karakteri var diye. mysql ile ilgili sorunuda hallettim ama olmuyor bi türlü.

türkçe include için bir function falan kullanıyormusun utf desteği için ?
 
0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Tepki puanı
7
windows kullanıyorsan oluşturduğun dosyalar türkçe isimde ise otomatik windows karakteri olur. utf-8 yaparsan bozulur o türkçe karakterler. ben linux kulanıyorum herşeyi utf-8 olduğu için o şekilde bir sorunum yok.
 
0
Onaylı Üye
Üye
Katılım
3 Haziran 2006
Mesajlar
947
Tepki puanı
0
Konum
Türkiye
Dosyaları kaydederken ansi yerine utf-8 olarak kaydedin
 
0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
teşekkürler ceasar :)

hocam UTF kaydettim ama o da olmadı. isim okumada bir sorun var include için. galiba windows tabanlı deniycem artık.
 
Root
Root
İyinet Ekibi
Onaylı Üye
Katılım
2 Eylül 2002
Mesajlar
5,043
Tepki puanı
79
Konum
SEO
Benim bahsettigim utf8_decode ve utf8_encode fonksiyonlari.
Perl de bu fonsiyonlari kullanarak cevrim yapilabiliyor, Turkce dahil.
Ancak PHP sadece ISO-8859-1 yani latin1 i destekliyor.
PHP deki utf8_decode ve utf8_encode fonksiyonlari Turkce'yi yani ISO-8859-5 yani latin5 i desteklemiyor.
 
0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
malesef debian sunucuda da aynı hatayı aldım. :(
 
0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Tepki puanı
7
abicim dosyaları atmayacaksın direk orada yaratman lazım.

atarsan aynı karakter setle gider. "touch dosyaismi.php" de bakalım
 
0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
tmm dediğin doğru orda yapınca ok. ama peki ben windows içinde nasıl UTF kullancam ? UTF kullanmadan nasıl çoklu dil desteği kullancam :(

ben napcam böle ya :(
 
0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Tepki puanı
7
turkce kullanmayiver canim sende:) dandik windows dandik bagiriyoruz o kadar
 
0
Onaylı Üye
Üye
Katılım
20 Eylül 2003
Mesajlar
2,741
Tepki puanı
5
tmm dediğin doğru orda yapınca ok. ama peki ben windows içinde nasıl UTF kullancam ? UTF kullanmadan nasıl çoklu dil desteği kullancam :(

ben napcam böle ya :(

php ile birşeyler yapanların bence linux üzerinde çalışması daha verimli olur, ubuntunun son hali çok güzel rahat kullanırsın, onu kurabilirsin en azından.
 
0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
valla url lerde türkçe karakter kullanmak istiyorum. google türkçe karakteri gayet iyi görüyor. dolaysıyla include yaptıklarımı url den gelen GET ile yaptığımdan türkçe karakter sorun oluyor. UTF de kullanmak istiyorum çünkü W3 iyidir diyor ve çoklu dil desteği için gerekiyor.

kaldık mı öle şimdi :(
 
0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
şu an için sanırım tek geçerli çözüm veritabanlarını dağıtmak, ve iso kodlarını değiştire değiştire site yapmak olacak ki bi karışıklık daha alcam başıma. zaten kıytırık bir framework yazıyorum bi de bu çıktı. öfff....
 
0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Tepki puanı
7
yahu elinde tanımla o zaman sende

PHP:
if ($_GET[t]=="türkçe") {
 include "turkce.php";
} else if ($_GET[t]=="şerafettin") {
 include "serafettin.php";
}

demokraside çareler tükenmiyor.
 
0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
offf sonunda GET ile gelen veriyi senin dediğin gibi iki ayrı diziye atıp temizleyerek bir tanesinde türkçe karaktersiz hale getirip include için kullandım ve oldu. PHP.net içinde yorumlarda sadık keskin diye biri şu fonksiyonu vermiş,

function turkce_karakter_sorunu($string) {
//$degisken=strtr(iconv('UTF-8','ISO-8859-9',$degisken), "çğıöşüÇĞİÖŞÜ", "cgiosuCGIOSU");
$str_array = array(
chr(196).chr(177) => chr(253),
chr(196).chr(176) => chr(221),
chr(195).chr(182) => chr(246),
chr(195).chr(150) => chr(214),
chr(195).chr(167) => chr(231),
chr(195).chr(135) => chr(199),
chr(197).chr(159) => chr(254),
chr(197).chr(158) => chr(222),
chr(196).chr(159) => chr(240),
chr(196).chr(158) => chr(208),
chr(195).chr(188) => chr(252),
chr(195).chr(156) => chr(220)
);
$degisken=str_replace(array_keys($str_array), array_values($str_array), $degisken);
return $degisken;
}

yunancasını görüp türkçesi çıkmayacak diye korkmuştum varmış iyi ki :)

Teşekkürler ceasar ;)
 
Geri
Üst