Eyl 26 2011
Php tr tükçe karakter sorunu, array de tr karakter sorunu giderme, replace to charset
Merhaba arkadaşlar klasik php de tr sorunu çıldırtır insanı, bunun sebebi standar charset table dünyada oluşturulurken bizim çok bilmiş mühendislerin veya devletimizin ilgili kurumunun bu standartın oluşturulma sırasındaki toplantılara gitmemesi önemsemesi bizim yıllarca bu sorunu yaşamamıza , sebep olması buda biz türklerin çilesi 🙂
sorunu normalde
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>
head ekleyip deneyin olmadı bunu deneyin
<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-9″>
olmadı php sayfasının en başına bunu sadece birkere kullanın include lar var ise
<?php header(“Content-type:text/html; Charset=utf-8”); ?>
olmadı db connectondan sonra alttaki donusturuculeri deneyin.
$db_con = mysql_connect($dbhost, $dbuser, $dbpass) or die (‘Error connecting to mysql’);
mb_internal_encoding(‘UTF-8’);
mysql_query(‘SET NAMES UTF8’);
mysql_query(“SET CHARACTER SET utf8”);
// mysql_query(“SET COLLATION_CONNECTION = ‘utf8_turkish_ci'”);
mysql_query(“SET COLLATION_CONNECTION = ‘utf8_general_ci'”);
hala olmadı ise en ilkel yöntem strin değiştirme ile karakter değiştireceğiz.
$gelendata = “Ey türk Gençliği”;
$trharfler = array(‘Ç’, ‘ç’, ‘Ğ’, ‘ğ’, ‘ı’, ‘İ’, ‘Ö’, ‘ö’, ‘Ş’, ‘ş’, ‘Ü’, ‘ü’);
$trkodharfler = array(‘& Ccedil;’, ‘& ccedil;’, ‘& #286;’, ‘& #287;’, ‘& #305;’, ‘& #304;’, ‘& Ouml;’, ‘& ouml;’, ‘& #350;’, ‘& #351;’, ‘& Uuml;’, ‘& uuml;’);
$degismishali = str_replace($trharfler, $trkodharfler, $gelendata);
Not : blogda gosterebilmek için & sonra boşluk koydum kodun çalışması için & ‘den sonraki boşlukları simeniz gerekecek.
bunu function halne getirelim:
<?php
function TrDuzelt($gelendata ){
$trharfler = array(‘Ç’, ‘ç’, ‘Ğ’, ‘ğ’, ‘ı’, ‘İ’, ‘Ö’, ‘ö’, ‘Ş’, ‘ş’, ‘Ü’, ‘ü’);
$trkodharfler = array(‘& Ccedil;’, ‘& ccedil;’, ‘& #286;’, ‘& #287;’, ‘& #305;’, ‘& #304;’, ‘& Ouml;’, ‘& ouml;’, ‘& #350;’, ‘& #351;’, ‘& Uuml;’, ‘& uuml;’);
$degismishali = str_replace($trharfler, $trkodharfler, $gelendata);
return $degismishali ;
}
?>
Ajaxçılar için
<?php
// ajax problemlerinde
function AjaxTrDuzelt($newphrase) {
$newphrase = str_replace(“Ãœ”,”Ü”,$newphrase);
$newphrase = str_replace(“Åž”,”Ş”,$newphrase);
$newphrase = str_replace(“Äž”,”Ğ”,$newphrase);
$newphrase = str_replace(“Ç”,”Ç”,$newphrase);
$newphrase = str_replace(“Ä°”,”İ”,$newphrase);
$newphrase = str_replace(“Ö”,”Ö”,$newphrase);
$newphrase = str_replace(“ü”,”ü”,$newphrase);
$newphrase = str_replace(“ÅŸ”,”ş”,$newphrase);
$newphrase = str_replace(“ç”,”ç”,$newphrase);
$newphrase = str_replace(“ı”,”ı”,$newphrase);
$newphrase = str_replace(“ö”,”ö”,$newphrase);
$newphrase = str_replace(“ÄŸ”,”ğ”,$newphrase);
return $newphrase;
}
?>
Kılavuz Yazılım
25 Eylül 2018 @ 13:31
Burhan kardeşim emeğine sağlık çok makbule geçti. TR karakter sorunundan kurtuldum sayende.
Burhan KARADERE
25 Eylül 2018 @ 13:35
Rica ederim.