IVAO Türkiye Bölümü > Genel Konular & Duyurular

IVAO TR Event API

(1/2) > >>

KEMAL EMRE ÖZTİRYAKİ:
Merhabalar,

Bildiğiniz gibi divizyonumuz aktif şekilde etkinlikler düzenlemektedir. Bu etkinlikler forum üzerinden ve ayrıca websitemiz üzerinden duyurulmaktadır. Bu kapsamda havayollarımıza IVAO TR sitesindeki etkinlikleri kendi sitelerinde gösterecek bir api tasarlamış bulunmaktayım.


API'yi nasıl kullanabiliriz?

API için herhangi bir başvuru yapmanıza gerek yoktur. API'ye http://tr.ivao.aero/eventapi.php adresinden ulaşabilirsiniz. Size döndürülecek veri json formatında olacağından, mevcut servis sağlayıcınızın (hosting şirketinizin) json_decode fonksiyonunu çalıştırabileceğinizden emin olunuz. Gelecek veri aşağıdaki formattadır:

{ "Etkinlik Numarası" : { "TITLE" : "Etkinlik Başlığı", "DATE" : "Etkinlik Tarihi", "BODY" : "İçerik", "IMAGE" : "Etkinlik Resminin Linki", "LINK" : "Forum Başlığı Linki" }


Önemli Not!

Sitenizde direkt olarak bu linki çalıştırmamanız gerektiğini, mümkün mertebe cronjob ile 30 dk, 1 saatlik aralıklarla veriyi çekerek kendi veritabanınıza işlemenizi öneririm.


Örnek kod:

Aşağıdaki kod ile veriyi çekerek kendi veritabanınıza işleyebilirsiniz. Ardından sitenizde kendi veritabanınızda olan bilgilerle etkinliği görüntüleyebilirsiniz.

* Kod içindeki mysql() fonksiyonları, yeni nesil mysqli() ile değiştirilmiştir. Sisteminiz PHP 7 altında ve hala mysql() kullanıyorsa, lütfen uygun değişikliği yapınız.

--- Code: ---<?php

$file = file_get_contents("https://tr.ivao.aero/eventapi.php"); // Veriyi çekiyoruz

$json = json_decode($file); // json decode ile çözümleme işlemi yapıyoruz

foreach ($json as $jarr){ // Herbir etkinlik için döngü yaratıyoruz
$res = mysqli_query($conn_link, "SELECT * FROM `ETKINLIK_TABLOSU` WHERE ETKINLIK_IDSI= ".$eventid); //Kendi veritabanımızda bu kayıt var mı?
// Kayıt yoksa yeni kayıt işleyecek, varsa mevcutu güncelleme yoluna gideceğiz.
if ( mysqli_num_rows($res) == 0 )
{
// $eventid , mysqli_real_escape_string($conn_link, $jarr->TITLE) , $jarr->DATE , mysqli_real_escape_string($conn_link, $jarr->BODY) , $jarr->IMAGE
// ve $jarr->LINK değişkenlerini veritabanına EKLEME (INSERT) sorgusu çalıştırıyoruz. İçerikte ve başlıkta 
// sorguyu hataya sürükleyecek kesme işaretleri olabileceğinden dolayı mysqli_real_escape_string fonksiyonunu kullanınız.
mysqli_query($conn_link, $query);
} else {
// $eventid , mysqli_real_escape_string($conn_link, $jarr->TITLE) , $jarr->DATE , mysqli_real_escape_string($conn_link, $jarr->BODY) , $jarr->IMAGE
// ve $jarr->LINK değişkenlerini veritabanına GÜNCELLEME (UPDATE) sorgusu çalıştırıyoruz. İçerikte ve başlıkta 
// sorguyu hataya sürükleyecek kesme işaretleri olabileceğinden dolayı mysqli_real_escape_string() fonksiyonunu kullanınız.
mysqli_query($conn_link, $query);
}
};

?>
--- End code ---




IVAO TR Web Development Department

FIRAT BİŞKİN:
Eline sağlık Emre VA'lar adına çok yararlı olacağını düşünüyorum.

ALP YENI:
Süpersin Kemal abi! Bodrum'a döner dönmez uyguluyorum. Ellerine kollarına sağlık!  :))

VEYSEL SEKER:
+1

EMRE YALIMKILINC:
Harika olmuş emre hocam ellerine sağlık...

Navigation

[0] Message Index

[#] Next page

Go to full version