Rosihan Ari`s Blog

Sebaik-baik manusia adalah yang bisa memberikan manfaat bagi orang lain«
[ English Version ] ABOUT ME | CONTACT ME | NO REKENING | NO RESI PENGIRIMAN BARANG

Menjalankan Script PHP Untuk SMS Gateway Tanpa Autorefresh Dengan AJAX
April 7th, 2010 | by rosihanari | 7,272 views | Cetak Artikel Ini

Free Software Sebenarnya sudah lama niat saya untuk artikel ini, tapi maaf baru kesampaian sekarang. Sepertinya para fans blog ini sudah gak sabar Artikel ini didasarkan pada hasil eksperimen pribadi yang awalnya hanya bersifat iseng-iseng saja. Dari judul artikel di atas, tentu Anda sudah bisa memperkirakan apa isi artikel ini yaitu cara alternatif menjalankan script PHP untuk memproses SMS gateway tanpa autorefresh browser. Dalam hal ini pembahasan hanya dibatasi untuk SMS Gateway dengan Gammu. Pada artikel-artikel sebelumnya, seringkali saya membuat contoh-contoh script PHP untuk memproses SMS yang masuk ke database menggunakan konsep autorefresh setiap n detik atau menjalankan script berulang-ulang secara otomatis setiap n detik. Namun konsep ini terkadang kurang cocok untuk browser yang menolak autorefresh. Beberapa rekan-rekan mengeluh karena browsernya tidak bisa melakukan autorefresh yang kemungkinan disebabkan settingan di browsernya. Dengan autorefresh yang sering tersebut, terkadang browser menganggap adanya suatu program abnormal. Dari hal di atas, maka saya menggunakan pendekatan lain untuk menjalankan script PHP pengolah SMS gateway tersebut bukan lagi menggunakan autorefresh namun menjalankan script PHP nya di balik layar (browser) menggunakan AJAX (Asynchronous Javascript And XML). Pada prinsipnya, penggunaan AJAX untuk menjalankan script PHP pengolah SMS gateway ini hampir sama dengan autorefresh, namun perbedaannya hanyalah autorefreshnya dilakukan di

php".open("GET". <head> 03. req. 07. 5000).. 06.XMLHttpRequest) { 05.htm view sourceprint? 01.js¶ merupakan file berisi script Javascript untuk menjalankan AJAX Sedangkan function µautorefresh()¶ adalah function untuk menjalankan autorefresh pada µscript.var page = "script. . 03. 02. true). 12. <h1 align="center">SMS SERVER</h1> 08. Lantas. 16.} .<html> 02. if (req) { 11. </head> 06. } 14.js"></script> 05. 10. page. 08.</body> 11.</html> Keterangan: y y File µajax. Selanjutnya.send(null).htm adalah sbb: index. bagaimana implementasinya? OK. true).htm´ untuk halaman utama tampilan. req. 10. } else if (window. Untuk proses autorefreshnya sendiri nanti menggunakan Javascript dan bukannya meload script ke browser seperti sebelumnya.<body onload="autorefresh('script.php¶. req. bagaimana isi script ajax.open("GET".function autorefresh(page) { 04. 09. Maka isi struktur dari halaman index. page. setTimeout("autorefresh(page)". . 13.js. dan juga halaman ³index. req = new ActiveXObject("Microsoft.balik layar browser. Function ini nantinya diletakkan dalam ajax. req.js nya? OK ini dia isinya ajax.ActiveXObject) { 09.XMLDOM"). <script type="text/javascript" src="ajax. req = new XMLHttpRequest().send(null). <title>SMS Server</title> 04. andaikan kita memiliki script PHP bernama ³script.php')"> 07. if (window. } 15.php´ untuk mengolah SMS gatewaynya.js view sourceprint? 01.

03. $hasil2 = mysql_query($query2). 10. "dbuser". 27. 16. 5000). '$now')".$query = "SELECT * FROM friends WHERE DAY(tglLahir) = '$tglNow' AND MONTH(tglLahir) = '$blnNow'". 12.mysql_select_db("dbname").// cari data teman yang bulan lahir dan tanggal lahir sesuai pada current date 17. // insert data ke tabel kirim 26. 06.<?php 02.php view sourceprint? 01.Javascript di atas akan melakukan autorefresh menggunakan AJAX pada setiap interval 5 detik (5000 milisekon). 19.mysql_connect("dbhost".// koneksi ke database mysql 04. 25. "dbpass"). 29. // jika proses insert ke tabel kirim sukses maka kirim sms ucapan 30.{ 21.// baca tanggal sekarang 08. $query2 = "INSERT INTO kirim (noHP. Sekarang saya akan mengambil contoh implementasi pendekatan di atas pada kasus SMS Ulang Tahun yang pernah dibahas. $noHP = $data['noHP'].$tglNow = date("d").$now = date("Y-m-d").php nya tidak perlu dijalankan karena yang menjalankan adalah script AJAX nya. tglKirim) VALUES ('$noHP'. if ($hasil2) 31.// baca bulan sekarang 11.$blnNow = date("m"). Anda bisa mengatur sendiri lama intervalnya pada bagian view sourceprint? 1. 05.setTimeout("autorefresh(page)". 07. OK« that¶s all. 18. // baca nomor HP dan nama teman 22.while ($data = mysql_fetch_array($hasil)) 20. $nama = $data['nama']. 28. 24. Misalkan kita punya script PHP untuk memproses SMSnya sbb: ultah. Untuk script. Nah« Script mana yang nantinya dijalankan di browser? yang dijalankan cukup file index. 13.$hasil = mysql_query($query). { .htm saja. 09. 15.// baca tahun-bulan-tanggal sekarang 14. 23.

} 16. page. 07. 35.32. // isi pesan SMS ucapan ultah.ActiveXObject) { 10. true).js¶ untuk AJAX nya sbb: ajax. 09. $query2 = "INSERT INTO outbox (DestinationNumber.js view sourceprint? 01. 13. req = new XMLHttpRequest().". Happy Birthday !! Semoga dengan bertambahnya usiamu. 14. } 15.send(null). true). '$pesanSMS'. 17.function autorefresh(page) { 05. 03.<html> 02. // proses kirim sms via insert data ke tabel outbox 36.} 40. CreatorID) VALUES ('$noHP'. page.<body onload="autorefresh('ultah.XMLDOM").". . 37. } 39. 5000). $pesanSMS = "Wahai sahabatku ".js"></script> 05. <h1 align="center">SMS SERVER ULANG TAHUN</h1> 08. req.?> Berikutnya kita buat javascript µajax.php". mysql_query($query2). req.} Sedangkan isi dari file index. disertai nama temannya 33. req. 41.// setting file tujuan autorefresh via AJAX 02. 08. semakin bertambah pula amalan ibadahmu. if (req) { 12. <title>SMS Server</title> 04. if (window. 'Gammu')". TextDecoded. </head> 06. setTimeout("autorefresh(page)".open("GET".</body> 09. 11. req.$nama.htm view sourceprint? 01. 38. 34. <head> 03. } else if (window.send(null).php')"> 07.var page = "ultah.htm nya adalah index.open("GET". req = new ActiveXObject("Microsoft. 04.XMLHttpRequest) { 06.</html> Script di atas sudah diuji coba dan berjalan dengan lancar di modem Wavecom Fastrack. <script type="text/javascript" src="ajax.

OK begitulah contoh implementasi pendekatan AJAX untuk mengolah data SMS dengan script PHP. . Mudah-mudahan artikel ini bermanfaat.

Sign up to vote on this title
UsefulNot useful