• 16-01-2019, 19:25:40
    #1
    Merhabalar arkadaşlar json verisinde değişiklik yapmak istiyorum. Özetlemek gerekirse 2 ayrı tablodan işlem yaptığım için tıkandım kaldım.Ürün tablosuna kategori ve alt kategori isimlerini kayıt ettirmek yerine sayı olarak kayıt ettiriyorum. Json formatında herhangi bir ürün çektiğim zaman ister istemez bana kategori ve alt kategori numarasını yazdırıyor. Kategori ve alt kategori tablolarından veri çektirebiliyorum fakat json çıktısı üzerinde nasıl değişiklik yapacağımı bilmiyorum.

    Ekler ve kod aşağıdadır;
    Kod:
    https://i.hizliresim.com/k9G57q.png

    Tablolar ve json çıktısı:
    https://i.hizliresim.com/QLvjzy.png
    https://i.hizliresim.com/XM9Z33.png



  • 16-01-2019, 19:34:24
    #2
    Mysql sorgusunda INNER JOIN , LEFT JOIN ve RIGHT JOIN kavramlarını araştırın. Bu kavramlar tek sorguda tüm verileri birleştirip çekmenizi sağlayacak.
  • 16-01-2019, 19:49:39
    #3
    Platin üye
    $array = json_decode($json, true); ile json u array içine alın, (true yazmassanız obje içine alır, array daha kolay olduğu için array'e çevirdik)

    print_r($array); ile array'ı dökün ve adreslemelere bakın,

    $array['alt_kategori'] = 'yeni_deger'; ile istediğiniz şekilde değişiklik yapın,

    bu şekile işinize yarıyorsa array olarak kalabilir, foreach ile döndürebilirsiniz,

    yok tekrar json lazımsa

    $json = json_encode($array); ile tekrar json'a dönüştürebilirsiniz.
  • 16-01-2019, 20:56:22
    #4
    merner adlı üyeden alıntı: mesajı görüntüle
    $array = json_decode($json, true); ile json u array içine alın, (true yazmassanız obje içine alır, array daha kolay olduğu için array'e çevirdik)

    print_r($array); ile array'ı dökün ve adreslemelere bakın,

    $array['alt_kategori'] = 'yeni_deger'; ile istediğiniz şekilde değişiklik yapın,

    bu şekile işinize yarıyorsa array olarak kalabilir, foreach ile döndürebilirsiniz,

    yok tekrar json lazımsa

    $json = json_encode($array); ile tekrar json'a dönüştürebilirsiniz.
    Hocam dediğiniz gibi yaptım sorunsuz çalıştı Teşekkürler..
  • 16-01-2019, 20:59:42
    #5
    Platin üye
    Onuraygun adlı üyeden alıntı: mesajı görüntüle
    Hocam dediğiniz gibi yaptım sorunsuz çalıştı Teşekkürler..

    her zaman.