Mari Membuat Web API Sederhana dengan PHP

Haiii, kali ini kita akan belajar tentang membuat Web API sederhana. Sebelumnya udah pada tau kan Web API itu apa? jadi, Web API itu adalah sebuah layanan yang disediakan oleh suatu sistem yang bertujuan untuk memberikan layanan berupa informasi kepada sistem/program lainnya (interaksi).

FLOW

dan,
Alat perang yang kalian semua butuhkan adalah
  • Text Editor (Cth: Notepad++)
  • Xampp/Wamp

Oke, Let's Get Started!

Step 1
Buat Database, (disini saya memakai nama: db_pelindungsatwa)






Step 2
Buat Tabel animal









Step 3
Isi Tabel Animal (minimal 1 record)




Step 4
Buat folder di ../xampp/htdocs bernama Pelindung_Satwa
Lalu buat file conn.php di folder tsb
<?php
 $host = "localhost";  //Nama Host
 $user = "root"; //Nama User
 $pass = ""; //Password
 $db = "db_pelindungsatwa"; //Nama Database
 
 //Koneksi
 mysql_connect($host, $user, $pass)
  or die (mysql_error());
 
 //Pilih Database
 mysql_select_db($db)
  or die(mysql_error()." Database Not Found!");
?>


Step 5
<?php
 //Memanggil conn.php yang telah kita buat sebelumnya
 include "conn.php";

 //Syntax MySql untuk melihat semua record yang
 //ada di tabel animal
 $sql = "SELECT * FROM animal";
 
 //Execetute Query diatas
 $query = mysql_query($sql);
 while($dt=mysql_fetch_array($query)){
  $item[] = array(
   "animal_id"=>$dt["animal_id"],
   "animal_name"=>$dt["animal_name"],
   "animal_latin"=>$dt["animal_latin"],
   "animal_icon"=>$dt["animal_icon"],
   "animal_desc"=>$dt["animal_desc"]
  );
 }

 //Menampung data yang dihasilkan
 $json = array(
    'result' => 'Success',
    'item' => $item
   );

 //Merubah data kedalam bentuk JSON
 echo json_encode($json);
?>


Step 6
Jrengjreng lihat hasilnya di http://localhost/pelindung_satwa/getanimal.php tips agar saat dilihat JSON lebih enak dipandang download extension chrome JsonVIEW https://chrome.google.com/webstore/detail/jsonview/chklaanhfefbnpoihckbnefhakgolnmc?utm_source=chrome-ntp-icon





Itu baru GET data, di dalam Web API masih terdapat POST, PUT, DELETE. Mungkin akan dibahas lain kali :p Thank You

33 komentar:

  1. manggilnya json di app lain gmn? atau dari php itu sendiri ..trims

    BalasHapus
  2. makasih ya, mas saya au nanya bagaimana carana untuk mengakses file json teresbut untuk digunakan di website yang lain

    BalasHapus
    Balasan
    1. Coba cari tutorial yang berkaitan dengan parsing JSON :)

      Hapus
  3. gan kok ane error ya di koneksinya

    BalasHapus
    Balasan
    1. Bisa coba screenshot errornya?

      Hapus
    2. Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\web_rs\panggilkamar.php on line 6

      Notice: Undefined variable: item in C:\xampp\htdocs\web_rs\panggilkamar.php on line 23
      {"result":"Success","item":null}

      Hapus
    3. mohon di bantu gan,
      terima kasih

      Hapus
    4. Kemungkinan Querynya mas, boleh saya lihat source codenya?

      Hapus
    5. mungkin yang error... query nya udah ga pake mysql kali tapi mysqli jadi excepts 1 parameter

      Hapus
  4. sangat membantu gan, keren blognya... btw udh ada kelanjutanya belum nih utnuk yg POST, PUT, DELETE??

    BalasHapus
    Balasan
    1. aduh belum sempet mas, nanti kalo sudah ada waktu saya pasti post hehehe

      Hapus
    2. atau boleh main-main ke github saya https://github.com/firmannf/cl-workshop-simple-api :)

      Hapus
  5. Kalau saya mau buat JSON sendiri bagaimana? boleh gak saya WA secara internal aja?

    BalasHapus
    Balasan
    1. inti dari tutorial ini kan membuat web services(yang direpresentasikan dengan JSON) sendiri, apa ada yang kurang jelas mas? Saya aktif di fb, boleh add fb saya :)

      Hapus
  6. Access denied for user ''@'localhost' to database 'db_aksesbank'Database Not Found!

    gagal ane mas :D

    BalasHapus
    Balasan
    1. Database not found? databasenya belum dibuat itu mas, atau username password ke localhostnya salah :D

      Hapus
  7. Balasan
    1. Bisa cek github saya mas https://github.com/firmannf/cl-workshop-simple-api :)

      Hapus
  8. keren mas.. terus cerdaskan bangsa..

    BalasHapus
    Balasan
    1. mantap mas, ngeblog juga salah satu cara belajar yang oke :D

      Hapus
  9. Gan , ini ada artikel lanjutannya ga? Misal yang bikin requestornya

    BalasHapus
    Balasan
    1. Belum ada, tapi ada contoh kode untuk GET, POST, PUT, DELETE di GitHub saya, cek link ini https://github.com/firmannf/cl-workshop-simple-api

      Hapus
  10. Gan kok malah gini

    Warning: mysqli_select_db() expects exactly 2 parameters, 1 given in C:\xampp\htdocs\pelindung_satwa\conn.php on line 12

    Warning: mysqli_error() expects exactly 1 parameter, 0 given in C:\xampp\htdocs\pelindung_satwa\conn.php on line 13
    Database Not Found!

    itu gimana yah Fixnya ? padahal dah DB udah ada

    BalasHapus
  11. Saya sudah download Githubnya kak Firman (https://github.com/firmannf/cl-workshop-simple-api). Cara memakai updatenya gimana ya?

    BalasHapus
  12. saya mengalami eror seperti ini Fatal error: Uncaught Error: Call to undefined function mysql_connect() in C:\xampp\htdocs\Pelindung_satwa\conn.php:8 Stack trace: #0 C:\xampp\htdocs\Pelindung_satwa\getanimal.php(3): include() #1 {main} thrown in C:\xampp\htdocs\Pelindung_satwa\conn.php on line 8
    gimana ya mas :D

    BalasHapus
  13. kak json itu spt kita buat file conn.php atau beda lagi,,,tks kak

    kunjungi website saya : https://nurrizkiana.mahasiswa.atmaluhur.ac.id,
    website kampus saya : http://www.atmaluhur.ac.id/

    BalasHapus
  14. ask gan, api ini fungsinya buat apa aja?

    Jangan lupa kunjungi blog saya di http://www.portalcoding.com

    BalasHapus
  15. Fatal error: Uncaught Error: Call to undefined function mysql_connect() in C:\xampp\htdocs\tugas\koneksi.php:7 Stack trace: #0 {main} thrown in C:\xampp\htdocs\tugas\koneksi.php on line 7 kak yang saya error nya begini

    BalasHapus
  16. Permisi bang kok yg saya error ya

    Object not found!
    The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.

    If you think this is a server error, please contact the webmaster.

    Error 404
    localhost
    Apache/2.4.17 (Win32) OpenSSL/1.0.2d PHP/5.6.23

    tolong bagaimana cara memperbaikinya bang

    BalasHapus
  17. Nagaqq Yang Merupakan Agen Bandarq terbaik , Domino 99, Dan Bandar Poker Online Terpercaya di asia hadir untuk anda semua dengan permainan permainan menarik dan bonus menarik untuk anda semua

    Bonus yang diberikan NagaQQ :
    * Bonus rollingan 0.5%,setiap senin di bagikannya
    * Bonus Refferal 10% + 10%,seumur hidup
    * Bonus Jackpot, yang dapat anda dapatkan dengan mudah
    * Minimal Depo 15.000
    * Minimal WD 20.000
    * Deposit via Pulsa TELKOMSEL
    * 6 JENIS BANK ( BCA , BNI, BRI , MANDIRI , CIMB , DANAMON )

    Memegang Gelar atau title sebagai AGEN POKER ONLINE Terbaik di masanya

    11 Games Yang di Hadirkan NagaQQ :
    * Poker Online
    * BandarQ
    * Domino99
    * Bandar Poker
    * Bandar66
    * Sakong
    * Capsa Susun
    * AduQ
    * Perang Bacarrat
    * Perang Dadu
    * BD QQ (New Game)


    Info Lebih lanjut Kunjungi :
    Website : NAGAQQ
    Facebook : NagaQQ official
    WHATSAPP : +855977509035
    Line : Cs_nagaQQ
    TELEGRAM :+855967014811

    BACA JUGA BLOGSPORT KAMI YANG LAIN:
    Winner NagaQQ
    Daftar NagaQQ
    nagaqq


    BalasHapus