getjson kullanımı hakkında
kripto para fiyatları aldığım bir json var ve ben bunu jquery ile göstermek istiyorum.
$source = 'https://api.site.com/veri';
$currency = json_decode(file_get_contents($source),true);
buradan gelen veri şu şekilde:
{
"symbol": "ETHBTC",
"price": "0.06612800"
},
{
"symbol": "LTCBTC",
"price": "0.00269400"
},
{
"symbol": "BNBBTC",
"price": "0.00963400"
},
ben ETHBTC kısmını almak için şunu yazdım:
$.getJSON('<?= $source ?>', data => {
$("#ETHBTC").html(data.0.price)
})
veriyi göstermek istediğim alan burası. ilk yüklemede veri geliyor bu arada.
<td><span id="ETHBTC"><?=$currency['0']['price'];?></span></td>
sanırım ben json içerisindeki veriye ulaşamıyorum getjson alanında
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (5)
arrayin ilk elemanına ulaşmak için data[0].price
yapabilirsin ama sen data.0.price
yapmışsın böyle bir kullanım yok
@ibrahimyesil hocam yanıt için teşekkür ederim. gelen veri json. tabii başka bir şekilde ifade ediliyor ise bilmiyorum.
ajax ile jquery arasındaki farkları araştırıp hangisinin daha az kaynak tükettiğini ve hangisinin avantajlı olduğunu araştırıyorum.
öğrenmeye çalıştığım için böyle sorular soruyorum sürekli. desteğiniz için teşekkür ederim.
@makifgokce hocam teşekkür ederim şu şekilde çalıştı:
const ethbtc = data.find(i => i.symbol == "ETHBTC")
$("#ETHBTC").html(ethbtc.price)
benim hatam neymiş, burada tam olarak ne yaptık açıkçası öğrenmek için yapıyorum bu işlemleri. vaktiniz olduğunda özet geçerseniz çok sevinirim.
Merhaba,
Gelen datanın "typeof" ile bir tipine bakın. Getjson fonksiyonunu ilk defa gördüm açıkçası. Baktığımda ise ajax ile aynı işi yapıyor.
Ajax ilede istek atıp veriyi alabilirsiniz.
Json string dönüyorsa eğer JSON.parse() ile string veriyi dönüştürüp kullanabilirsiniz.
Hata vs. varsa ekran görüntüsü olarak onuda eklerseniz bakabiliriz buradan.
Kolay gelsin.
$.getJSON('<?= $source ?>', data => {
const ethbtc = data.find(i => i.symbol == "ETHBTC")
$("#ETHBTC").html(ethbtc.price)
// veya
// $("#ETHBTC").html(data[0].price)
})