jump to navigation

Membangun SMS Gateway itu gampang-gampang susah Bagian 3 (Membuat program kirim SMS ke banyak orang) November 18, 2009

Posted by ikhwaniril in Tutorial.
trackback

Mungkin program-program seperti myphone explorer lebih mudah digunakan dibandingkan dengan program yang akan kita buat. Tapi kita bisa mengkreasikan hasil buatan kita sehingga tidak kalah dengan program tersebut.

Baiklah langsung saja kita mulai, skenarionya adalah sebuah sekolah yang ingin mengumumkan sesuatu ke orang tua siswa tentang sesuatu hal. Berikut langkah-langkahnya:

1. Jalankan query berikut untuk membuat tabel data siswa di database yang telah kita buat sebelumnya (tabel ini berisi tentang data-data siswa seperti nama, no hp, dsb)

CREATE TABLE IF NOT EXISTS data_siswa (

id bigint(20) NOT NULL auto_increment,
nis varchar(5) NOT NULL DEFAULT ” ,
kelas varchar(10) NOT NULL DEFAULT ” ,
kelas_detail varchar(10) NOT NULL DEFAULT ” ,
nama varchar(100) NOT NULL DEFAULT ” ,
no_hp varchar(20) NOT NULL DEFAULT ” ,
RIMARY KEY (id)
);

CREATE TABLE IF NOT EXISTS kirim (
id tinyint(4) NOT NULL auto_increment,
no_hp text NOT NULL DEFAULT ” ,
PRIMARY KEY (id)
);

2. Kemudian masukkan data  siswa ke dalam tabel tersebut dengan menjalankan query berikut

INSERT INTO data_siswa VALUES(“1004″,”109″,”VIII”,”VIII D”,”Ghaza”,”085649921023″);
INSERT INTO data_siswa VALUES(“1005″,”123″,”VII”,”VII A”,”Khoiril”,”085649921034″);
INSERT INTO data_siswa VALUES(“1006″,”322″,”IX”,”IX A”,”gigih”,”085649921678″);

INSERT INTO kirim VALUES(“1″,”0″);

3. Setelah databasenya siap selanjutnya kita akan buat script phpnya untuk mengirimkan sms. Simpan di folder www pada program appserv

<form id=”form1″ method=”post” action=”insert.php”>

<table width=”329″ border=”0″ cellpadding=”0″ cellspacing=”0″>

<tr>

<td width=”78″ height=”35″>Kelas</td>

<td width=”14″>:</td>

<td width=”237″><select id=”kelas”>

<option value=”semua”>Semua</option>

<option value=”VII”>Kelas VII</option>

<option value=”VIII”>Kelas VIII</option>

<option value=”IX”>Kelas IX</option>

</select></td>

</tr>

<tr>

<td>Isi Pesan </td>

<td>:</td>

<td><textarea name=”text” cols=”30″ rows=”4″ class=”bacas”></textarea></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>

<td><input type=”submit” value=”Submit” /></td>

</tr></table>

</form>

4. Script diatas merupakan antar muka untuk pengiriman sms, berikut tampilannya

5. Kemudian ketika di submit maka script tersebut akan mengeksekusi script insert.php. Berikut script dari insert.php (tempatkan satu folder dengan file form.php)

<?

// koneksikan ke database sms //

$hostname_config = “localhost”;

$database_config = “sms”;

$username_config = “root”;

$password_config = “root”;

$config = mysql_pconnect($hostname_config, $username_config, $password_config) or trigger_error(mysql_error(),E_USER_ERROR);

mysql_select_db($database_config, $config);

// Jika yang dipilih Semua Kelas (VII, VIII, IX) //

if ($kelas==semua)

{

// ambil data semua siswa dari tabel data_siswa //

$sql=mysql_query(“SELECT * FROM data_siswa”);

while($sis=mysql_fetch_array($sql))

{

// ambil data dari tabel kirim //

$ambil=mysql_query(“SELECT * FROM kirim where id=’1′”);

$tmpl=mysql_fetch_array($ambil);

$hp=$tmpl[no_hp];

$no_hp=$sis[no_hp];

// jika nilai dari baris no_hp pada tabel kirim 0 jalankan ini //

if($hp==’0′)

{

$update=mysql_query(“UPDATE kirim SET no_hp=’$no_hp'”);

}

// jika nilainya tidak kosong jalankan script ini //

else

{

$update=mysql_query(“UPDATE kirim SET no_hp=’$hp,$no_hp'”);

}

}

}

// Kelas-kelas tertentu saja //

else

{

// ambil data semua siswa dari tabel data_siswa //

$sql=mysql_query(“SELECT * FROM data_siswa WHERE kelas_detail=’$kelas'”);

while($sis=mysql_fetch_array($sql))

{

// ambil data dari tabel kirim //

$ambil=mysql_query(“SELECT * FROM kirim where id=’1′”);

$tmpl=mysql_fetch_array($ambil);

$hp=$tmpl[no_hp];

$no_hp=$sis[no_hp];

// jika nilai dari baris no_hp pada tabel kirim 0 jalankan ini //

if($hp==’0′)

{

$update=mysql_query(“UPDATE kirim SET no_hp=’$no_hp'”);

}

// jika nilainya tidak kosong jalankan script ini //

else

{

$update=mysql_query(“UPDATE kirim SET no_hp=’$hp,$no_hp'”);

}

}

}

// gantikan spasi antar kata dengan + //

$words = explode (‘ ‘, $text);

$text = join(‘+’, $words);

// ambil nilai dari tabel kirim dimana idnya 1 //

$ambil1=mysql_query(“SELECT * FROM kirim where id=’1′”);

$tmpl1=mysql_fetch_array($ambil1);

$sender=$tmpl1[no_hp];

// kirimkan sms ke no yang sudah disimpan di tabel kirim //

header(“Location:http://127.0.0.1:8800/?PhoneNumber=$sender&Text=$text&#8221;);

}

?>

6. Setelah kita memilih kelas dan menuliskan pesan selanjutnya akan diproses oleh script diatas. No HP penerima diperoleh dari tabel data siswa, yang dipisahkan berdasarkan kelas-kelasnya

Hii mungkin agak repot yah scriptnya di mengerti. Kalau ngak ngerti cukup copy paste aja

%d bloggers like this: