İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

PHP utf-8 problemi

webyazilim

0
İyinet Üyesi
Katılım
12 Haziran 2006
Mesajlar
1,511
Reaction score
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
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
63
Konum
Sakarya
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)?.
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
:) Ben her zaman utf-8 kullanıyorum artık hiç o şekilde bir sorun yaşamadım.
 

webyazilim

0
İyinet Üyesi
Katılım
12 Haziran 2006
Mesajlar
1,511
Reaction score
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 ?
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
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.
 

webyazilim

0
İyinet Üyesi
Katılım
12 Haziran 2006
Mesajlar
1,511
Reaction score
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.
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
63
Konum
Sakarya
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.
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
abicim dosyaları atmayacaksın direk orada yaratman lazım.

atarsan aynı karakter setle gider. "touch dosyaismi.php" de bakalım
 

webyazilim

0
İyinet Üyesi
Katılım
12 Haziran 2006
Mesajlar
1,511
Reaction score
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 :(
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
turkce kullanmayiver canim sende:) dandik windows dandik bagiriyoruz o kadar
 

tiva

0
İyinet Üyesi
Katılım
20 Eylül 2003
Mesajlar
2,741
Reaction score
4
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.
 

webyazilim

0
İyinet Üyesi
Katılım
12 Haziran 2006
Mesajlar
1,511
Reaction score
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 :(
 

webyazilim

0
İyinet Üyesi
Katılım
12 Haziran 2006
Mesajlar
1,511
Reaction score
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....
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
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.
 

webyazilim

0
İyinet Üyesi
Katılım
12 Haziran 2006
Mesajlar
1,511
Reaction score
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 ;)
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst