Soru & Cevap

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

04.03.2014 - 04: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 :(

120 Görüntülenme

3 Cevap

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

Profile picture for user sevgii
sevgii
30.12.2022 - 12:32

Merhabalar, probleminiz çözüldü mü?

picture-57989-1451678910.jpg
serdarşen
20.04.2016 - 07: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");

 

picture-19354-1419383480.jpg
abalta
25.02.2015 - 07: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.

/sites/default/files/cevaplar/dosya/2020/file-json.txt