Şimdi Ara

Api bağlantısı hakkında bilgi ?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
6
Cevap
0
Favori
590
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba bir sistem üzerindeki kullanıcı verilerinin çekilerek web sitem üzerinde görüntülenmesini sağlamak istiyorum. Şuan bu linkteki verileri farklı bir php ye include ediyorum sonra kullanacağım tüm sayfalarda bu php yi file get ile çağırarak tüm verileri tek tek sorgulayıp yazdırıyorum.

    Birinci sorun verileri file get ile çektiğim için fazladan \'lar bulunuyor ve linklerin kullanılmasında sorun yaşıyorum. Bu linkteki verilerin değişkenleri atanması için nasıl bir yol izlemem gerektiği konusunda yardımcı olmanızı istiyorum.

    Verilerin çekildiği sayfahttps://wotapi.thor.re/api/wot/player/1

    Nasıl çekmem gerektiği yazan fakat benim bir beceremediğim sayfa

    İlgili sayfahttps://forum.truckersmp.com/index.php?/topic/42564-world-of-trucks-api/

    İkinci sorun bu çekilen verileri birden çok sayfada kullandığım için her açılan sayfada verileri tekrar sorguluyor. Fakat çektiğim sayfada sınırlama mevcut. Bu yüzden bazı sayfalarda veriler görüntülenemiyor. Bu linkteki verilerin veri tabanına otomatik olarak saatte 1 mesela yazdırılması mümkün mü ?

    Bu konuda beni bilgilendirirseniz sevinirim. Teşekkürler







  • veriler.txt adında aynı klasörde dosya oluşturun.

    Dosyanın izni 666 olsun. Yani dosyaya sistem yazabilmeli.

    file_put_contents("veriler.txt", file_get_contents("https://wotapi.thor.re/api/wot/player/1"));

    Bu kod ile veriler.txt içine sayfadaki veriler gelirse artık veriler.txt kullanılabilir. 1 saat olayı ise şu şekilde ayarlanacak. veriler.txt en son güncellemeden sonra 1 saat geçmiş mi sorgusu yapılacak ona göre devam edilecek.

    <?php

    $zaman_farki = time() - filemtime("veriler.txt");

    if (3600 <= $zaman_farki){
    file_put_contents("veriler.txt", file_get_contents("https://wotapi.thor.re/api/wot/player/1"));
    }

    $veriler = file_get_contents("veriler.txt");

    ?>
  • quote:

    Orijinalden alıntı: nihattr

    veriler.txt adında aynı klasörde dosya oluşturun.

    Dosyanın izni 666 olsun. Yani dosyaya sistem yazabilmeli.

    file_put_contents("veriler.txt", file_get_contents("https://wotapi.thor.re/api/wot/player/1"));

    Bu kod ile veriler.txt içine sayfadaki veriler gelirse artık veriler.txt kullanılabilir. 1 saat olayı ise şu şekilde ayarlanacak. veriler.txt en son güncellemeden sonra 1 saat geçmiş mi sorgusu yapılacak ona göre devam edilecek.

    <?php

    $zaman_farki = time() - filemtime("veriler.txt");

    if (3600 <= $zaman_farki){
    file_put_contents("veriler.txt", file_get_contents("https://wotapi.thor.re/api/wot/player/1"));
    }

    $veriler = file_get_contents("veriler.txt");

    ?>


    @nihattr ilginiz ve yardımız için teşekkür ederim. dediginiz gibi verileri çekip sorugulayabiliyorum yani engellenme konusunu sayenizde aştım birden cok veriyi aynı txt alt alta yazdırma ihtimail varmı ? listelemeler ve toplam istattistikler için böyle bişey yapmam gerek.




  • ozan18 kullanıcısına yanıt
    veriler.txt içinde üzerine yazılmasın, yani her defa altına eklensin istiyorsanız şu şekilde değişiklik gerekli.



    file_put_contents("veriler.txt", file_get_contents("https://wotapi.thor.re/api/wot/player/1"), FILE_APPEND);

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • quote:

    Orijinalden alıntı: nihattr

    veriler.txt içinde üzerine yazılmasın, yani her defa altına eklensin istiyorsanız şu şekilde değişiklik gerekli.



    file_put_contents("veriler.txt", file_get_contents("https://wotapi.thor.re/api/wot/player/1"), FILE_APPEND);

    Yardımınız için çok teşekkür ederim söylediginiz gibi düzenledim sorunlarım çözüldü. Son bir konudada firkiniz almak istiyorum ilk mesajdada belirtmiştim çekilen verilerin içinde https:\/\/static.truckersmp.com\/avatars\/defaultavatar.png şeklinde fazladan \ mevcut buda benim için sorun yaratıyor. Bu konuda yapabiliceğim birşey varmı ? İlginiz için tekrar teşekkürler
  • ozan18 kullanıcısına yanıt
    json verisini php dizisine çevirmek daha kullanışlı. Bilmiyorum nasıl yapıyorsunuz.

    $veriler_dizisi = json_decode($veriler, TRUE);

    Sonuç buna dönüşür.

    Array
    (
    [username] => Komat
    [stats] => Array
    (
    [jobs] => 34
    [mass] => 477 t
    [totalDistance] => 5,143 km
    [averageDistance] => 151 km
    [timeOnDuty] => 7 h7 min
    )

    [plates] => Array
    (
    [eut2PlateUrl] =>https://worldoftrucks.com/neutral/license_plate.php?side=front&game=eut2&value=KOMAT|czech
    [atsPlateUrl] =>https://worldoftrucks.com/neutral/license_plate.php?side=front&game=ats&value=KOMAT|california
    )

    [details] => Array
    (
    [ets2] => Array
    (
    [jobsAccomplished] => 20
    [timeOnDuty] => 4 h 46 min
    [totalMassTransported] => 336 t
    [averageDeliveryDistance] => 164 km
    [longestJobCompleted] => 1,192 km
    [totalDistance] => 3,288 km
    [difficultSpotParking] => 3
    [easySpotParking] => 3
    [mostJobsInSingleWOTRDay] => 4
    [mostJobsTakenFrom] => Praha (Czech Republic)
    [mostSourcedCompany] => EuroGoodies
    [mostSuppliedCompany] => Tradeaux
    [mostTakenCargo] => Empty palettes
    )

    [ats] => Array
    (
    [jobsAccomplished] => 14
    [timeOnDuty] => 2 h 20 min
    [totalMassTransported] => 138 lg tn
    [averageDeliveryDistance] => 82 mi
    [longestJobCompleted] => 149 mi
    [totalDistance] => 1,152 mi
    [difficultSpotParking] => 0
    [easySpotParking] => 1
    [mostJobsInSingleWOTRDay] => 11
    [mostJobsTakenFrom] => Las Vegas (Nevada)
    [mostSourcedCompany] => SellGoods
    [mostSuppliedCompany] => Wallbert
    [mostTakenCargo] => Gifts
    )

    [global] => Array
    (
    [jobsAccomplished] => 34
    [timeOnDuty] => 7 h 7 min
    [totalMassTransported] => 477 t
    [averageDeliveryDistance] => 151 km
    [longestJobCompleted] => 1,192 km
    [totalDistance] => 5,143 km
    [difficultSpotParking] => 3
    [easySpotParking] => 4
    )

    )

    )


    Önemli değil, tek sorunum \ karakterlerini yok etmek ise;

    $veriler = preg_replace('#\\\/#', '/', $veriler);

    kodu kullanılır.

    URL adreslerinden başka yerde de çıkma durumu varsa;

    $veriler = preg_replace('#\\#', '', $veriler);

    kodu kullanılabilir.



    < Bu mesaj bu kişi tarafından değiştirildi nihattr -- 5 Ağustos 2017; 21:11:23 >




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.