json keylerini formda nasıl kullanırım update için.
Böyle bir json var :
[{"beden":["S","M","L","XL"],"tip":"radio","özellik_adı":"beden","özellik_adi_tr":"Beden"},{"renkler":["Beyaz","Gri"],"tip":"radio","özellik_adı":"renkler","özellik_adi_tr":"Renkler"}]
Formda saklamak için json içinde ki her alan için gerekli $.beden[0] gibi bunları jsondan nasıl çıkarırım bir fonksiyon varmıdır.
Yani ben beden ismi için inputta o alana ait json keyini tutmak istiyorum.
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (2)
Merhaba, öncelikle değerleri tuttuğun array anahtarını bir döngüye sokacağın için renkler,bedenler şeklinde değil de sabit bir anahtar olarak belirlemeni tavsiye ederim, örneğin degerler olsun.
İkinci olarak obj tipinde anahtarlarda da türkçe karakter kullanmamanı da tavsiye ederim. Yani örneğin şu şekilde olsun:
[{"degerler":["S","M","L","XL"],"tip":"radio","ozellik_adi":"beden","ozellik_adi_tr":"Beden"},{"degerler":["Beyaz","Gri"],"tip":"radio","ozellik_adi":"renkler","ozellik_adi_tr":"Renkler"}]
Bu şekilde olduğunda php ile şu şekilde:
<?php
$json = file_get_contents('data.json');
$json = json_decode($json);
foreach( $json as $element ):
echo '<h3>'.$element->ozellik_adi_tr.'</h3>';
foreach( $element->degerler as $value ):
echo '<input type="'.$element->tip.'" value="'.$value.'" name="'.$element->ozellik_adi.'"> '.$value;
endforeach;
endforeach;