Siteme webservis yazmaya çalışıyorum. Mysql verileri dizi halinde çekip json_encode ile çevirmeye çalıştığımda post_content satırında link,img gibi html kodları olduğu zaman çıktı aşağıdaki gibi oluyor. alt text

Gördüğünüz gibi düzgün görüntülenemiyyor. Kodlarım aşağıdaki gibidir.

public function get_posts($status=false) {
    $sql = "select * from wp_posts where post_status='publish' and post_type='post' order by ID DESC limit 0,1";
    $query = mysql_query($sql);
    $posts = array();
    while ($result = mysql_fetch_assoc($query)):
        $this->posts[] = array("posts" => $result["post_content"]);
    endwhile;
}

public function get_json() {
    $this->get_posts();
    header('Content-type: application/json');
    echo json_encode(array('posts' => $this->posts));
}

soruldu: 10 Eyl '13, 08:14

olkunmustafa's gravatar image

olkunmustafa
582222934
cevap kabul oranı: 26%

değiştirildi: 14 Eyl '13, 02:40

MDemir's gravatar image

MDemir
2.1k173445


Hiç bir sorun yokmuş aslında FTP'ye atıp başına sonuna ob_start ob_endflus koyunca problem kalmadı :D Çok teşekkür ederim.

permanent link

cevaplandı: 11 Eyl '13, 02:25

olkunmustafa's gravatar image

olkunmustafa
582222934
cevap kabul oranı: 26%

Kodlarında sorun yok. Tarayıcıya header ile bunun JSON formatında olduğunu söylemediğin için bunu HTML dosyası olarak kabul etmiş, tarayıcı da html taglarını gördüğü için böyle gösteriyor. Yani projen çalışınca hiç bir sorun görmezsin. ama tarayıcıda json çıktısının da düzgün gösterilmesini istiyorsan ob_startın altına header('Content-Type:application/json'); yazman yeterli olacaktır. Tarayıcı bunun JSON dosyası olduğunu farkettiğinden html taglarında sorun olmayacaktır.

permanent link

cevaplandı: 11 Eyl '13, 05:04

fesy's gravatar image

fesy
312
cevap kabul oranı: 0%

Evet aynen bu şekilde olmuş. html taglerimi kaldırınca düzeldi.

(11 Eyl '13, 05:06) olkunmustafa olkunmustafa's gravatar image

Son echo satırını echo json_encode($this->posts); olarak değiştirseniz düzelecek galiba. json_encode($this->post, JSON_FORCE_OBJECT) kullanımıyla obje oluşturmayı sağlayabilirsiniz.

permanent link

cevaplandı: 11 Eyl '13, 00:02

ertuncefeoglu's gravatar image

ertuncefeoglu
7705719
cevap kabul oranı: 20%

değiştirildi: 11 Eyl '13, 00:06

Anlamadım, hata nerede? Çünki gelen JSON raw ( ham ) halde ve doğru. Sen eğerki gelen JSON verisindeki img' ları, url' leri browser otomatik olarak algılasın kardeşim diyorsan, yanılıyorsun. Çünki gelen veri string ve browser bunu otomatikman anlamaz. Yapman gereken, url' leri ve img' leri JSON içinden çekip bunları ilgili html taglari arasına almalısın! Bunu yapabilmenin yolu ise, service client yazmalısın. Yani senin sunucunun gönderdiği verileri clientta yorumlayıp değerlendirecek istemci uygulaması.

permanent link

cevaplandı: 11 Eyl '13, 00:05

O%C4%9Fuz%20%C3%87elikdemir's gravatar image

Oğuz Çelikdemir
2.0k52234
cevap kabul oranı: 13%

değiştirildi: 11 Eyl '13, 00:06

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×168
×71
×39

Soruldu: 10 Eyl '13, 08:14

Görüntüleme: 1,058 kez

Son güncelleme: 14 Eyl '13, 02:40

powered by BitNami OSQA