Turkcell | Geleceği Yazanlar

Soru & Cevap

Mysql verilerini json'a aktarırken Türkçe karakter sorunu

04.03.2014 - 16:36

Merhaba, Mysql, database, json'dan annlayan arkadaşlara soruyorum. Mysql'den php yardımıyla tablo verilerini json çıktısı halinde alıyorum. Verilerde türkçe karakter olunca "?" ya da "\ssd54s" gibi değerler geliyor. Bunu nasıl çözebilirim? Amacım Mysql'deki verileri listview'e çekmek. Android kodu tamam, tıkır tıkır işliyor, ama tr karakter işi bozuyor :(

3099 Görüntülenme

2 Cevap

Serdar Şen
20.04.2016 - 19:19

Merhaba Furkan, aynı sorunu olanlar için yazayım dedim. aşağıdaki yöntem etkili olabilir.

 

//veritabanına bağlanır.
    $con= mysqli_connect($host, $user, $pass, $db);
    mysqli_set_charset($con,"utf8");

 

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Abdullah
25.02.2015 - 19:49

Şimdi ilk olarak json verilerini çektiğiniz yeri tarayıcıda çalıştırdığınızda orada da mı türkçe karakter hatası oluşuyor. Eğer o şekilde ise php tarafında aşağıdaki kodu kullanabilirsin.

[code]     $result = array();
     $queryforauto = mysql_query("SELECT vocabulary FROM dictionary");
     
    function json_turkce($dizi){
    foreach($dizi as $record){ 
        foreach($record as $key=>$og){
            $colm[]='"'.$key.'":"'.$og.'"';
        }
        $rec[]='{'.implode(',', $colm).'}';
        unset($colm);
    }
    $sonuc='['.implode(',', $rec).']';
    return $sonuc;
    }
     
     while($all = mysql_fetch_array($queryforauto))
     {
        $result[] = $all; 
     }
      echo json_turkce($result);
      mysql_close($con);
      ?>[/code]

Yok, uygulama tarafında sorun varsa, JsonParser kütüphanesini mi kullanıyorsun bilmiyorum ama, orada encode kısımlarını kontrol edebilirsin. Elimde eski ama kullanışlı bir JsonParser sınıfı var. Onu da gönderiyorum inceleyebilirsin.

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.