• 02-03-2022, 11:33:01
    #1
    Üyeliği durduruldu
    file get contents ile json veri alıp buradaki verileri istediğim gibi değişkenlere aktarıyorum.
    örneğin
    $data = file_get_contents('url');
    $dolaralis = $data["dolar"]["alis"];
    ben $dolar değişkenini güncelle butonuna basınca güncellemek istiyorum. tabii ki sayfa yenilenmeden.

    bir tabloda dolar euro ve sterlin fiyatlarını göstereceğim. verileri değişkene alıyorum. echo ile ekrana yazdırıyorum. ama jquery ile yenile butonu ile ya da süre ayarlı olarak yapmak istiyorum.

    araştırdığım zaman genelde dosya içerisinden veri okuyorlar. ya da php içerisine post atıp gelen yanıtı basıyorlar ekrana. ben değişkenlerimin aldığı değeri göstermek istiyorum.

    bunu nasıl yapabilirim örnek kodu olan varsa yardımcı olabilir mi?
  • 02-03-2022, 11:36:56
    #2
    Jquery Ajax Php Post

    veya Javascript XmlHttpRequest PHP Post

    Şeklinde aratırsanız istediğiniz sonuca ulaşabilirsiniz
  • 02-03-2022, 12:09:19
    #3
    Ajax ile çektiğin tabloyu belirlediğin süre içinde sayfa yenilenmeden güncelleyebilirsin
  • 02-03-2022, 12:23:51
    #4
    Üyeliği durduruldu
    basit bir örnek dokümanı gönderme şansınız var mı?
    Venque adlı üyeden alıntı: mesajı görüntüle
    Ajax ile çektiğin tabloyu belirlediğin süre içinde sayfa yenilenmeden güncelleyebilirsin
  • 02-03-2022, 13:26:22
    #5
    Developer
    json için örnek:
    <html>
    <body>
        <?php
        $source = 'https://cdn.jsdelivr.net/gh/fawazahmed0/currency-api@1/latest/currencies/usd.json';
        $currency = json_decode(file_get_contents($source),true);
        ?>
        <span id="try"><?php echo $currency['usd']['try']; ?></span>
        <button id="update">update</button>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
        <script>
            $( "#update" ).click(function() {
            $.getJSON("<?php echo $source; ?>", function(x){
                $("#try").text(x['usd']['try']);
            });
            });
        </script>
    </body>
    </html>
  • 02-03-2022, 14:25:09
    #6
    Üyeliği durduruldu
    Çok teşekkür ederim hocam bu çok işime yaradı.

    brown adlı üyeden alıntı: mesajı görüntüle
    json için örnek:
    <html>
    <body>
        <?php
        $source = 'https://cdn.jsdelivr.net/gh/fawazahmed0/currency-api@1/latest/currencies/usd.json';
        $currency = json_decode(file_get_contents($source),true);
        ?>
        <span id="try"><?php echo $currency['usd']['try']; ?></span>
        <span id="try"><?php echo $currency['eur']['try']; ?></span>
        <span id="try"><?php echo $currency['gbp']['try']; ?></span>
        <span id="try"><?php echo $currency['jpy']['try']; ?></span>
        <button id="update">update</button>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
        <script>
            $( "#update" ).click(function() {
            $.getJSON("<?php echo $source; ?>", function(x){
                $("#try").text(x['usd']['try']); // bu kısmı nasıl çoğaltabilirim
            });
            });
        </script>
    </body>
    </html>
  • 03-03-2022, 14:08:24
    #7
    Halil0707 adlı üyeden alıntı: mesajı görüntüle
    Çok teşekkür ederim hocam bu çok işime yaradı.

    eğer vaktiniz olursa bu soruma da yanıt verebilir misiniz?

    birden fazla değişkenim var, birden fazla fiyat ekleyeceğim zaman bu scripti tamamen mi çoğaltmalıyım? 2 ve daha fazla fiyat göstereceğim için kodları yanlış çoğaltmak istemiyorum. olduğu gibi çoğaltırım bana kalsa ama sistemi yoracak muhtemelen. bu yapıya birden fazla fiyatı nasıl ekleyebilirim?

    ve buton yerine saniye ayarlı hale nasıl getirebilirim? boş bir vaktinizde yanıt verirseniz sevinirim.

    yanıttaki kodu düzenledim daha iyi ifade edebilmek için.

    localden istek attığım için bir sorun yaşamışım o sorunu tekrar kaldırdım buradan. sunucudan istek atınca yanıt aldım.

    [/PHPR]
    let url = "<?=$url?>";
    
     setInterval(function(){
      updateUSD();
      console.log('her saniyede çalışacak saniyeyi değiştirmek için 1000 değerini değiştirin.');
    },1000);
    
    function updateUSD(){
       $.getJSON(url,function(data){
             console.log(data);
       })
    }
  • 03-03-2022, 20:20:29
    #8
    Developer
    <?php
    $source = 'https://cdn.jsdelivr.net/gh/fawazahmed0/currency-api@1/latest/currencies/usd.json';
    $arr = ['try','bnb','algo','atom']; //usd - x pariteleri
    $currency = json_decode(file_get_contents($source),true);
    ?>
    <html>
        <body>
            <?php foreach($arr as $arrVal): ?>
            <div style="display:block;">
                usd to <?php echo $arrVal; ?>: <span id="<?php echo $arrVal; ?>"><?php echo $currency['usd'][$arrVal]; ?></span>
            </div>
            <?php endforeach; ?>
            <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
            <script>
                setInterval(function(){
                $.getJSON("<?php echo $source; ?>", function(x){
                    <?php foreach($arr as $arrVal): ?>
                    $("#<?php echo $arrVal; ?>").text(x['usd']['<?php echo $arrVal; ?>']);
                    <?php endforeach; ?>
                    //console.log(x);
                });
                },5000);
            </script>
        </body>
    </html>