Archive for the ‘PHP’ Category

Engine-engine SMS Opensource berbasis Console

Untuk kebutuhan publik, SMS Gateway makin marak digunakan. SMS Gateway adalah sebuah metode yang digunakan agar proses dan transaksi SMS dapat dilakukan dengan komputer. Dengan demikian, SMS dapat dimanage sedemikian hingga SMS tersebut dapat dikombinasikan dengan sistem informasi. Maka, sistem informasi masa kini akan makin terjangkau oleh masyarakat umum. Dengan ditambah fitur input dan output melalui SMS, inspirasi publik akan makin banyak dapat diserap, dan informasi akan makin dapat secara luas diterima.

Sistem Informasi berbasis SMS Gateway tersebut dapat berupa sistem Informasi Desktop ataupun Web. Dengan digabungkan dengan engine-engine SMS Gateway yang dapat diakses dengan mudah oleh bahasa pemrogramman, maka SMS Gateway siap untuk menjadi pelayan publik.

Lantas bagaimanakah proses kerja engine SMS Gateway itu? Engine SMS Gateway akan mendeteksi adanya hardware mobile untuk SMS pada komputer anda. Selanjutnya engine tersebut akan dapat melakukan pengiriman dan penerimaan SMS, tergantung pada fitur yang ada pada engine tersebut. Berikut beberapa engine SMS Gateway yang dapat anda download.

  1. SMS Tools
  2. Gnokii
  3. Kannel
  4. Gammu

SMS Tools

SMS Tools adalah Engine SMS yang berjalan di Sistem Operasi LINUX.  Mengenai hal ini pernah saya posting di http://bimosaurus.wordpress.com/2008/03/14/installasi-gsm-modem-itegno-pada-linux-slackware/.

Anda dapat mendownload SMS Tools pada http://smstools.meinemullemaus.de/. Permasalahan dalam SMSTools pada versi yang terakhir saya gunakan adalah masalah support database. SMSTools versi yang terakhir saya gunakan belum mengampu database. Sistem ini merestore SMS Masuk ke dalam file acak. Sedangkan pengiriman dapat langsung dilakukan dengan perintah.. Keunggulannya adalah simple dan cepat.

Gammu

Gammu ini adalah SMS Engine yang sifatnya Opensource yang disediakan untuk sistem operasi Linux maupun Windows. Anda dapat mendownloadnya di http://wammu.eu/. Untuk tutorial mengenai Gammu ini anda dapat membaca pada posting blog saya yang lain di http://bimosaurus.multiply.com/journal/item/551. Panduan di sana cukup lengkap dan sudah bisa dijamin anda membuat sebuah Sistem SMS berbasis web.

Selamat mencoba

Tags: , , ,

Skrip PHP untuk SMS broadcast beda content

Anda mungkin pernah bekerja sebagai database engineer yang bertugas mengolah data dan mengirimkan pada masing-masing member dengan isi konten tiap member yang berbeda. Sebagai contoh, anda bekerja sebagai database engineer pada sebuah sekolah yang sedang menjalani PSB (Pendaftaran Siswa Baru) dengan model ujian dan pengumuman melalui SMS. Misal para member tersebut digambarkan dalam tabel seperti berikut:

No No HP Nama Member ID Pin
1 081328888888 Bimo 0121212 1234
2 081328888887 Budi 09876 1235
3 081328888886 Banu 65432 1236

Misal anda akan mengirimkan SMS untuk seluruh nomer HP secara serentak pada tabel di atas tersebut dengan isi yang masing masing berbeda sesuai dengan PIN nya. Pertama-tama kita akan membuat database dan tabelnya seperti berikut:

use gammu;
DROP TABLE IF EXISTS `kirim_banyak`;

CREATE TABLE `kirim_banyak` (
  `id` int(5) NOT NULL auto_increment,
  `nohp` varchar(30) collate latin1_general_ci default NULL,
  `nama` varchar(30) collate latin1_general_ci default NULL,
  `memberid` varchar(30) collate latin1_general_ci default NULL,
  `pin` varchar(30) collate latin1_general_ci default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

Kemudian kita dapat membuat script PHP nya seperti berikut:


$host='localhost';
$user='root';
$password='';
mysql_connect($host,$user,$password);
mysql_select_db($gammu);

$q="SELECT * FROM `kirim_banyak`";
$n=mysql_query($q);

while($r=mysql_fetch_array($n)){

$sms=$r[2] . " " . $r[3] . " " $r[4];
$noHp=$r[1];

$sql="INSERT INTO `outbox` (`TextDecoded`,`DestinationNumber`,`CreatorId`) values ('$sms','$noHp','1')";
mysql_query($sql);

}

Nah silakan dicoba

Tags: , , ,

Membedakan masukan POST dan GET pada Bahasa Pemrograman PHP (Bagian 2 – POST)

Jika pada posting yang lalu telah dibahas mengenai HTTP GET, maka pada posting ini akan dibahas mengenai HTTP POST. Apakah bedanya HTTP GET dengan HTTP POST?
Jika HTTP GET adalah proses user mengambil data dari web server, maka POST adalah proses dimana user memberikan data dengan cara men-submit data ke webserver. Salah satu bentuk POST ini adalah ketika kita melakukan pengiriman email atau pendaftaran suatu Formulir secara online.

Coba bukalah editor teks anda, seperti vi, notepad, notepad++ atau lainnya, dn buatlah sebuah file dengan seperti ini

Beri nama file ini dengan post.html yang berfungsi sebagai masukan dari user.

 
<html>
<head><title>Test satu</title></head>
 
<body>
 
<form action='send.php'>
<input type='text' name='nama' value='isikan nama'>
<input type='password' name='password'>
<input type='submit' value='CROT!!'>
</form>
 
</body>
</html>

Kemudian buatlah satu file lagi dengan nama send.php yang berfungsi untuk menerima di sisi server, kemudian mengubahnya menjadi variabel yang dapat diolah oleh server.

<?php
 
//ambil variabel nama dan password
$nama = $_GET['nama']; 
$pass = $_GET['password'];
 
//beri piliha.. jika nama dan password tidak kosong dan isinya benar berarti masuk 
if(((!empty($nama) || (!empty($pass))){
 
	if($nama == 'admin')&&($pass == 'ndeso'){
		echo "Yes Masuk";
	}else{
		header("Location:send.php");
	}
}else{
header("Location:send.php");
}
 
?>

Membedakan masukan POST dan GET pada Bahasa Pemrograman PHP (Bagian 1 – GET)

Membedakan masukan POST dan GET pada Bahasa Pemrograman PHP

Sebagai bahasa pemrograman Web yang dinamis dan dapat melakukan penerimaan masukan dari sisi client, maka PHP dilengkapi dengan beberapa fasilitas untuk menunjang masukan itu. Antara lain adalah metoda POST dan GET yang berasal dari halaman HTML yang muncul di sisi client. Dari metoda POST dan GET inilah, PHP akan membuat “variabel” berdasar masukan itu. Bagaimanakah memahami masukan POST dan GET?

<?php
 
$var = $_GET['opo'];
if(!empty($var)){
	echo "Anda memasukkan kata/huruf:<strong>" . str_replace("\\","",$var) . "</strong>";
}else{
	echo "K O S O N G.. Periksa lagi pada Address bar, dan tambahkan kata <strong>\"?opo=kalimatyangandaingintuliskan\"</strong><br/>Atau anda dapat klik di <a href=\"" . $_SERVER['PHP_SELF'] . "?opo=BEGITU LHO CARANYA\">sini</a>";
}
?>

Contoh GET method

Get method dapat dipahami sebagai “input / masukan yang dimasukkan melalui halaman address bar”. Dalam dunia web, metoda GET adalah metoda dimana user melakukan HIT alias pengambilan data dengan cara memasukkan masukan melalui halaman address bar. Ketika anda mengetikkan http://yahoo.com maka sebenarnya anda sedang melakukan permintaan ke server yahoo. Karena anda tidak menentukan halaman, melainkan hanya alamat situs saja, maka webserver yahoo akan secara otomatis memberikan untuk anda halaman index, dimana halaman index dapat berupa index.php, index.cgi, default.asp, atau jenis file index yang ditentukan oleh situs tersebut.
Pada contoh di atas tersebut, saya membuat file bernama get.php, dimana file tersebut saya letakkan dalam direktori DocumentRoot/artikel/postget, dalam hal ini adalah C:\Xampp\htdocs\artikel\postget Sehingga URL file tersebut menjadi : http://namaserver/artikel/postget/get.php . Jika saya melakukan dari computer saya sendiri akan menjadi http://localhost/artikel/postget/get.php.
Penjelasan perbagian dari file tersebut adalah:

<?php
/*apapun isinya
-
-
*/
?>

Bagian diatas tersebut, dapat dilihat pada bagian atas dan bawah file get.php. Semua yang ada di dalam tanda TAG tersebut, akan dijalankan dan diperlakukan oleh webserver sebagai file PHP.

$var = $_GET['opo'];

Dalam hal ini saya membuat sebuah VARIABEL, dimana variable tersebut akan mengambil nilai yang masuk dengan metoda GET. Dalam hal ini saya ingin membuat dimana GET akan mengambil value dari request ‘opo’. URL yang akan terbentuk menjadi seperti ini : http://namakomputer/artikel/post-get/get.php?opo=masukannya
Dimana namakomputer dalam hal ini adalah localhost. Dengan demikian jika kita masukkan

http://localhost/artikel/post-get/get.php?opo=INIadalahGETsayaYangPErtama

Maka $var akan berisi kalimat “INIadalahGETsayaYangPertama”. Nilai $var akan berganti-ganti sesuai isi ‘opo’. Bisa dipahami bukan? Itulah GET method.

Kemudian kita akan mengolah masukan GET method ini sebagai data masukan yang akan diproses lebih lanjut yang kemudian akan menjadi keluaran. Pada file tersebut juga terdapat

if(!empty($var)){
	echo "Anda memasukkan kata/huruf:<strong>" . $var . "</strong>";
}else{
	echo "K O S O N G.. Periksa lagi pada Address bar, dan tambahkan kata <strong>\"?opo=kalimatyangandaingintuliskan\"</strong><br/>Atau anda dapat klik di <a href=\"" . $_SERVER['PHP_SELF'] . "?opo=BEGITU LHO CARANYA\">sini</a>";
}

Dimana setelah proses “pengisian $var” sebagai variable, dilanjutkan dengan percabangan:

JIKA $var adalah tidak kosong (tanda ! di depan empty berfungsi sebagai negasi atau “tidak”) maka akan dilanjutkan dengan perintah echo. Echo adalah perintah untuk memunculkan keluaran kata/karakter.

Echo memiliki sintaks seperti berikut dibawah:

echo VARIABEL;
echo "kata yang dimasukkan";
echo "kata yang dimasukkan" . variable . "tambah apalagi" . variable2  . "danseterusnya";

misal

echo $var;
echo "Anda memasukkan kata/huruf:<strong>" . $var . "</strong>";
<strong> kataapit </strong>

adalah perintah dalam HTML untuk membuat kata yang diapit menjadi tebal.

Else memiliki fungsi “Jika tidak seperti itu maka”.

echo “K O S O N G.. Periksa lagi pada Address bar, dan tambahkan kata <strong>\”?opo=kalimatyangandaingintuliskan\”</strong><br/>Atau anda dapat klik di <a href=\”" . $_SERVER['PHP_SELF'] . “?opo=BEGITU LHO CARANYA\”> sini </a >”;

Memiliki arti akan menuliskan “K O S O N G” dan seterusnya. Echo, akan selalu diawali dengan tanda kutip dan diakhiri dengan tanda kutip. Pertanyaannya adalah, bagaimana jika kita akan menuliskan tanda kutip sebagai keluaran? Dalam PHP menuliskan tanda kutip dalam echo akan diberikan tanda \ pada sebelum tanda kutip yang dituliskan.

Seperti contoh:

echo " \" ";

akan menghasilkan kata keluaran ”

Pertanyaan selanjutnya, bagaimana jika kita akan menuliskan tanda \ . Kita harus melakukan pengetikan tanda \ itu sebanyak dua kali. Karena jika tidak, PHP akan salah intersepsi dengan menganggap kita bermaksud menutup tanda petik sebagai kalimat.
Silakan dicoba dengan

echo """;
echo "\"";
echo "\";
echo "\\";


memiliki arti pindah baris.

<a href=\"" . $_SERVER['PHP_SELF'] . "?opo=BEGITU LHO CARANYA\">sini</a>";

Dalam hal ini saya bermaksud menuliskan kata “sini” yang memiliki LINK yang jika diikuti akan mengarah ke http://localhost/artikel/postget/get.php?opo=BEGITU LHO CARANYA

Hanya saja saya ingin, script get.php ini akan jalan di manapun tidak peduli di computer saya atau computer server manapun. Maka bagian $_SERVER[‘PHP_SELF’] memiliki fungsi mengarahkan pada URL lengkap hingga nama file.