Php Türkçe Karekter Sorunu

murderes
09-06-2010, 16:43   |  #1  
OP Taze Üye
Teşekkür Sayısı: 0
1 mesaj
Kayıt Tarihi:Kayıt: Haz 2010

Merhaba ChipForum Sakinleri;
Türkçe karakter problemi yaşıyorum,çözmek için onlarca makale okudum fakat sonuç hep aynı,bir türlü çözemedim ve anlayışla karşılayacağın üzerehp sinir krizleri içirisindeyim ve neren baksanız 5 saat'imi böyle saçma bir problem için harcadım:(
YARDIMLARINIZI ESİRGEMİYECEĞİNİZİ UMUYORUM.
ŞİMDİDEN BİLE ZAHMET EDİP BUNLARI OKUYUP DEĞERLİ ZAMANINIZI BENİMLE PAYLAŞTIĞINIZ İÇİN TEŞEKKÜR EDERİM..
Elimde php script var,ben yazmadım,hazır scipt ama warezi düşmedi piyasaya,yurt dışındaki bir firmanın sitesi Türkiyedeki distiribitörlerine attığı ve kullandığı script her neyse soruna gelelim..
TÜRKÇE KARAKTERLERİ Göstermiyor..!
PhpMyadmin'den yazdığım zaman düzgün yazıyor ama işleme koyduğum zaman bir hakkımızda yazan yerde Hakk?m?zda böyle bir yazı yada sitenin admin panelinde yazdığım zaman ise hak++^'k'+^da gibi abuk sabuk şeyler çıkıyor
hemen okumadan ıso şunu yap filam demeyin..Herneyse style.css içerisinde css leri yüzlerce kez değiştirdim düzeltim olmuyor
Baknızı css kodunun ilgili kısmı;
[CODE]@charset "utf-8";  (gördğz üzeri utf-8) bunu yüzlece kez değiştirdim ama sorun gitmedi
body {
 background:url(images/pagebg.jpg) repeat-y center top;
}
.header {
 font-family: Tahoma;
 font-size: 11px;
 width: 980px;
 margin-top: 0px;
 margin-right: auto;
 margin-bottom: 0px;
 margin-left: auto;
 height:270px;
 position:relative;
 z-index:0;
}
.clearfloat {
 clear:both;
    height:0;
    font-size: 1px;
    line-height: 0px;
}
#planet {
 width:980px;
 outline:0;
 z-index:-1;
 position:absolute;
 top:0;
}
.top-left-menu {
 background:url(images/bg-top-left.png) no-repeat right top;
 width:350px;
 height:31px;
 position:absolute;
 top:0;
 left:0;
 z-index:2;
 padding-left: 10px;
}
.top-left-menu li {
 display:inline;
 padding:0 10px;
}
li.linie01 {
 background:url(images/linie01.gif) no-repeat right center;
}
.top-left-menu a {
 font-family: Tahoma, sans-serif;
 font-size: 11px;
 color:#036;
 text-decoration:none;
 display:inline-block;
 height:24px;
 padding-top:7px;[/CODE]
İkinci bir dikkatimi çekip yoğunlaştıp araştırma yaptığım konu ise bir php dizini buyrun bunada bakınız;
[CODE]f (isset($_GET['lang']) AND array_key_exists($_GET['lang'], $languages)) {
    include 'lang/' . $languages[$_GET['lang']] . '.php';
 $lang = $_GET['lang'];
 $lang_link = $_GET['lang'].'/';
} else {
    include 'lang/romana.php';
 $lang = 'ro';
 $lang_link = '';
}
 
function titrez($gettirez, $nr) {
 $titrez_row = strip_tags($gettirez);
 $titrez_dots = "";
 if(strlen($titrez_row) > $nr ) { $titrez_dots = ".."; }
 $titrez_row = substr($titrez_row,0,$nr);
 return $titrez_row.$titrez_dots;
}
function gen_path($string) {
 
 $pattern = '/[^a-z0-9]/i';
 $pattern2 = '/[-]+/i';
 $replacement = '-';
 
 // RO 'A', 'a', 'Ă‚', 'â', 'Î', 'ĂŽ', 'S', 's', 'T', 't', 'S', 's', 'T', 't'
 $ro_in = array("\xc3\xbd", "\xc3\xb6", "\xc3\x9d", "\xC3\xA2", "\xC3\x8E", "\xC3\xAE", "\xC8\x98", "\xC8\x99", "\xC8\x9A", "\xC8\x9B", "\xC5\x9E", "\xC5\x9F", "\xC5\xA2", "\xC5\xA3");
 $ro_out = array('i', 'ö', 'I', 'a', 'I', 'i', 'S', 's', 'T', 't', 'S', 's', 'T', 't');
 
 // FR Ĺ” Ĺ• Ă‚ â Ć ć ÄŒ č É ĂŠ Ę Ä™ Ă‹ ĂŤ Î ĂŽ Ď ď Ă” Ă´ ÂŒ Âœ ĹŽ ĹŻ Ĺ° Ĺą Ăœ Ăź Ÿ Ë™ Ç ç
 $fr_in = array("\xC3\x80", "\xC3\xA0", "\xC3\x82", "\xC3\xA2", "\xC3\x86", "\xC3\xA6", "\xC3\x88", "\xC3\xA8", "\xC3\x89", "\xC3\xA9", "\xC3\x8A", "\xC3\xAA", "\xC3\x8B", "\xC3\xAB", "\xC3\x8E", "\xC3\xAE", "\xC3\x8F", "\xC3\xAF", "\xC3\x94", "\xC3\xB4", "\xC5\x92", "\xC5\x93", "\xC3\x99", "\xC3\xB9", "\xC3\x9B", "\xC3\xBB", "\xC3\x9C", "\xC3\xBC", "\xC5\xB8", "\xC3\xBF", "\xC3\x87", "\xC3\xA7");
 $fr_out = array('A', 'a', 'A', 'a', 'Ae', 'ae', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'I', 'i', 'I', 'i', 'O', 'o', 'Oe', 'oe', 'U', 'u', 'U', 'u', 'U', 'u', 'Y', 'y', 'C', 'c');
 
 // HU Á ĂĄ É ĂŠ Í Ă* Ă“ Ăł Ă– Ăś O o Ăš Ăş Ăœ Ăź U u
 $hu_in = array("\xC3\x81", "\xC3\xA1", "\xC3\x89", "\xC3\xA9", "\xC3\x8D", "\xC3\xAD", "\xC3\x93", "\xC3\xB3", "\xC3\x96", "\xC3\xB6", "\xC5\x90", "\xC5\x91", "\xC3\x9A", "\xC3\xBA", "\xC3\x9C", "\xC3\xBC", "\xC5\xB0", "\xC5\xB1");
 $hu_out = array('A', 'a', 'E', 'e', 'I', 'i', 'O', 'o', 'O', 'o', 'O', 'o', 'U', 'u', 'U', 'u', 'U', 'u');
 
 // DE Ă„ ä Ă– Ăś Ăœ Ăź ĂŸ
 $de_in = array("\xC3\x84", "\xC3\xA4", "\xC3\x96", "\xC3\xB6", "\xC3\x9C", "\xC3\xBC", "\xC3\x9F");
 $de_out = array('Ae', 'ae', 'Oe', 'oe', 'Ue', 'ue', 'ss');
 
 // ES Á ĂĄ É ĂŠ Í Ă* Ă“ Ăł Ăš Ăş Ĺƒ Ĺ„ Ăœ Ăź
 $es_in = array("\xC3\x81", "\xC3\xA1", "\xC3\x89", "\xC3\xA9", "\xC3\x8D", "\xC3\xAD", "\xC3\x93", "\xC3\xB3", "\xC3\x9A", "\xC3\xBA", "\xC3\x91", "\xC3\xB1", "\xC3\x9C", "\xC3\xBC");
 $es_out = array('A', 'a', 'E', 'e', 'I', 'i', 'O', 'o', 'U', 'u', 'N', 'n', 'U', 'u');
 
 $search_arr = array_merge($ro_in, $fr_in, $hu_in, $de_in, $es_in);
 $replace_arr = array_merge($ro_out, $fr_out, $hu_out, $de_out, $es_out);
 $seo_url = str_replace($search_arr, $replace_arr, $string);[/CODE]
işte bunlarla boğuşuyorum ve türkçe karakter sorunun nasıl düzelteceğimi bilemiyorum...
\xC3\x81 gördüğünüz kodlarıda yaptım python kullanarak örneğin ;
u"äöü".encode('utf-8')
'\xc3\xa4\xc3\xb6\xc3\xbc'
değerlerini öğrenip işledim ama problem düzelmedi ve daha bir çok başka yönem  denedim mesala phpmydaminden latin 5 yaptım yine olmadı sorun nerde çözemedim burada yaptığım işlemeleri anlatmaya kalkarsam :(
LÜTFEN YARDIMLARINIZI BEKLİYORUMM...OKUDUNUĞUNUZ İÇİN ÇOK ÇOK TEŞEKÜÜR EDERİMMM

Son Düzenleme: murderes ~ 09 Haziran 2010 16:45