Php Restful Web Service Örneği
Merhabalar, Php restful ile ufak bir web service örneği yapacağız. MySql veri tabanındaki verilerimizi JSON ve XML formatında ekrana basacağız.Bir önceki yazımda sadece JSON olarak ekrana basıyordukBu yazımda XML ve JSON olarak basacağız. JSON ve XML formatlarını platform bağımsız her uygulamanızda kullanabilirsiniz. Biz hem JSON hem XML şeklinde biçimlendireceğiz. Siz istediğiniz formatı kullanabilirsiniz.
İlk önce bir veri tabanı oluşturalım:
CREATE DATABASE php_web_service;
Tablomuz:
CREATE TABLE kullanicilar(
id int(8) primary key auto_increment,
ad varchar(15) not null,
soyad varchar(15) not null,
cinsiyet varchar(15) not null,
email varchar(15) not null
);
Veri tabanı ve tablomuzu oluşturduk, şimdide PHP ile bu veri tabanındaki verileri biçimlendirelim.
Kodumuz:
<?php
// veri tabanından hangi kolonları çekecek burada belirliyoruz.
class veriler {
public $ad = "";
public $soyad = "";
public $cinsiyet = "";
function __construct($ad, $soyad, $cinsiyet) {
$this->ad = $ad;
$this->soyad = $soyad;
$this->cinsiyet = $cinsiyet;
}
}
class verileriFormatla{
public function format_JSON(){
$conn = new mysqli("localhost", "root", "", "php_restful_webservice");
if($conn->connect_error)
{
echo "Veri tabanı bağlantı hatası : " . $conn->$connect_error;
}
$query = "SELECT * FROM kullanicilar";
$kullanici_array = array();
if($result = $conn->query($query)){
while ($nesne = $result->fetch_object()){
$gecici_kullanici = new veriler($nesne->ad, $nesne->soyad, $nesne->cinsiyet);
$kullanici_array[] = $gecici_kullanici;
}
foreach ($kullanici_array as $value) {
$kullanici_bilgisi = json_encode($value);
echo $kullanici_bilgisi;
echo '<br />';
}
$result->close();
$conn->close();
}
}
public function format_XML(){
$conn = new mysqli("localhost", "root", "", "php_restful_webservice");
if($conn->connect_error)
{
echo "Veri tabanı bağlantı hatası : " . $conn->$connect_error;
}
$query = "SELECT * FROM kullanicilar";
$kullanici_array = array();
if($result = $conn->query($query)){
while ($nesne = $result->fetch_object()){
$gecici_kullanici = new veriler($nesne->ad,$nesne->soyad, $nesne->cinsiyet);
$kullanici_array[] = $gecici_kullanici;
}
}
echo '<?xml version="1.0" encoding="UTF-8" ?>';
echo '<veriler>';
$a = 0;
for ($i=0; $i < 3; $i++) {
echo '<veriler>';
foreach($kullanici_array[$a] as $key=>$value){
echo '<' . $key . '>' . $value . '</' . $key . '>';
echo "<br />";
}
$a=$a + 1;
echo '</veriler>';
echo "<br />";
}
echo '</veriler>';
}
}
$ekranabas = new verileriFormatla();
echo "JSON FORMATINDAKI VERILER";
echo "<br /><hr></hr>";
$ekranabas->format_JSON();
echo "<br /><hr></hr>";
echo "XML FORMATINDAKI VERILER";
echo "<br /><hr></hr>";
$ekranabas->format_XML();
?>
JSON çıktımız:
{"ad":"Mehmet","soyad":"Deniz","cinsiyet":"E"}
{"ad":"Ali","soyad":"Efe","cinsiyet":"E"}
{"ad":"Funda","soyad":"Arar","cinsiyet":"K"}
XML çıktımız:
<?xml version="1.0" encoding="UTF-8" ?>
<veriler>
<veriler>
<ad>Mehmet</ad><br />
<soyad>Deniz</soyad><br />
<cinsiyet>E</cinsiyet><br />
</veriler><br />
<veriler><ad>Ali</ad><br />
<soyad>Efe</soyad><br />
< cinsiyet>E</cinsiyet><br />
</veriler><br />
<veriler>
<ad>Funda</ad><br />
<soyad>Arar</soyad><br />
<cinsiyet>K</cinsiyet><br />
</veriler><br />
</veriler>
İşlemlerimiz bu kadar.
Sağlıcakla..
Burak Hamdi TUFAN
Comments
çok başarılı devamını bekliyoruz Bu verilerin doğruluğunu nasıl kontrol ediyorsunuz ? Şimdiden teşekkürler...
2015/08/29 20:11:04Teşekkürler Özkan Bey, veriler direkt olarak veri tabanından geliyor. Web servisi tarayıcınızda çalıştırırsanız verilerinizi test edebilirsiniz.
2015/08/29 20:26:37