Merhaba arkadaşlar, öncelikle belirteyim. Forumda konuyla ilgili arama yaptım ama sorunumu çözemedim.
PHP ile oluşturduğumuz kullanıcı izleme sistemi için üye sitelere aşağıdakine benzer php kodu veriyoruz.
<?php
$var=file_get_contents("www.site.com/index.php?uye id=xxx"); // xxx = üyenin id'si
print $var ;
?>Sorun şu ki , üyenin bu kodu koyduğu site utf-8 veya iso-8859-9 ise karakterlerle kodlanmışsa bozulmalar oluyor. En başta şunu belirtmeliyim ki , vereceğimiz bu kod sabit olmalı. Yani her kullanıcıda kod değiştiremeyiz.
site.com üzerindeki index.php sayfasında ise her türlü kodlamayı denedim. utf-8 , iso-8859-9 , hatta hiç kodlama belirtmeden denedim ama sorunum
çözülmedi.
Bu kodu kullanacak örnek 2 tane site var. Biri utf-8 ile kodlanmış. Diğeri ise iso-8859-9.
Kod, iso-8859-9 la kodlanmış siteye konulduğunda sorun çıkartmıyor ama utf-8 liye konulduğunda sorun çıkartıyor.
print iconv('iso-8859-9', 'utf-8//TRANSLATE', $var); kodunu kullandığımda da utf-8 li sitede düzeliyor ama bu sefer de iso-8859-9 lu site bozuluyor.
Şimdilik çözüm, utf-8 li site bu kodu kullanırken ilgili php dosyasını "farklı kaydet" kısmından utf-8 olarak kaydetmeli. Ama bunu her kullanıcının
yapmasını isteyemem.
iconv fonksiyonunu if bloğuna alıp o şekilde ekrana bastırmak aklıma geldi ama if şartını neye göre sağlayacağımı bilmiyorum. Örnek ;
<?php
$var=file_get_contents("www.site.com/index.php?uye_id=xxx");
if ( ??? koşulu ) {
print iconv('iso-8859-9', 'utf-8//TRANSLATE', $var);
}
else{
print $var ;
}
?>
Şimdiden herkese teşekkürler. 2 gündür bu sorunla uğraşıyorum