RSS
 

PHP – JQuery Tips&Tricks – JSON Parse İşlemindeki problem

29 May

Merhaba,

Eğer PHP ile gönderdiğiniz data’lar üzerinde JQuery ile çalışıyorsanız mutlaka JSON kullanmışsınızdır veya kullanacaksınızdır :) JQuery’nin $.parseJSON(); metodu bu iş için güzel bir çözüm. Size verdiğiniz JSON data’yı JS Object haline getirerek direkt property’lerine erişmenize olanak sağlıyor. Fakat PHP’nin json_encode() metodu Array’i encode ederken başına ve sonuna lanet iki tane char ekliyor.

Örn;

[{"name":"Zakan"}] gibi çıktı oluşturuyor. Sizde $.post() işleminden sonra geri dönen fonksiyonda JSON data’sını $.parseJSON()’na veriyorsunuz. O da null dönüyor veya undefined olarak property’lere erişemiyorsunuz. Jquery’nin sayfasında gayet güzel bir çözüm önermişler; http://api.jquery.com/jQuery.parseJSON/ buradan erişebilirsiniz. Türkçesi şöyle; Eğer parseJSON() metodu null, mal dönerse git kendin native olarak elle json.org’dan indir json2.js dosyasını uğraş.

Lafı fazla uzatmadan, Çözüm;

1. Tavsiyem PHP tarafında aşağıdaki şekilde convert edip JQuery’ye göndermeniz.

<?php
   $json_convert = substr(json_encode($sqlRST), 1, -1);
   print($json_convert);
?>

2. Ben native JS veya JQuery ile halletmek istiyorum diyorsanız text().substring(); metodunu kullanabilirsiniz.

Önümüzde ay yoğunluğum azalırsa daha sık bir şeyler karalamaya çalışacağım. Whatever! :)

İyi Çalışmalar.

 
1 Comment

Posted in AJAX, PHP

 

Leave a Reply

 

 
  1. HD

    29/05/2012 at 10:37

    Dediğin şekilde yaptım olmadı’nın cevabı;
    $.post() methoduna vereceğiniz callback function’ı sonrasında ,”JSON” v.s. eklemeyin.