Konsep
INSERT Data dengan PHP
Setelah Anda
mengenal beberapa bentuk perintah SQL untuk memanipulasi atau mengolah data
di MySQL, pada
bab ini Anda
akan diperkenalkan bagaimana menerapkan konsep tersebut yang
terintegrasi dengan script PHP.
Pada bab ini
terlebih dahulu akan diperkenalkan bagaimana konsep inserting data ke
MySQL melalui PHP.
Koneksi PHP ke MySQL
Sebelum kita
membahasnya lebih lanjut tentang
inserting data, terlebih dahulu akan disinggung tentang bagaimana caranya
melakukan koneksi dari PHP ke MySQL.
Perintah PHP untuk koneksi ke MySQL adalah:
mysql_connect(‘nama
host’, ‘nama user’, ‘password’);
mysql_select_db(‘nama
db’); Keterangan:
Nama
Host : nama
komputer di mana
MySQL nya berada,
kalo berada di komputer itu sendiri maka nama hostnya:
‘localhost’, bisa juga diberi nomor IP dari komputernya.
Nama User : nama user yang memiliki hak
akses ke MySQL nya Password : password dari nama user yang punya hak akses ke
MySQL Nama DB : nama database yang akan dipilih
Contoh:
Berikut
ini adalah script
untuk melakukan koneksi
ke MySQL dengan
nama host:
localhost, user : root, password: root, dan
nama database: contoh
<?php
mysql_connect('localhost', 'root', 'root');
mysql_select_db('contoh');
?>
Sebaiknya script
di atas kita simpan dalam file script tersendiri, misalkan koneksi.php.
Selanjutnya script tersebut
kita includekan ke
dalam script lain
yang di dalamnya terdapat query-query SQL.
Menjalankan Query SQL di PHP
Setelah kita
melakukan koneksi dari PHP ke MySQL, selanjutnya kita bisa menjalankan query
melalui script PHP.
Untuk menjalankan query SQL di PHP, kita
gunakan perintah mysql_query(query);
Contoh:
Berikut ini contoh script PHP untuk
menjalankan query SQL untuk insert data ke tabel
MySQL
<?php
include "koneksi.php";
$query = "INSERT INTO
namaTabel(field1, field2) VALUES(value1, value2) ";
mysql_query($query);
?>
Selanjutnya akan dibahas bagaimana mengimplementasikan konsep inserting data ke
MySQL melalui script PHP yang
diintegrasikan dengan form input
Studi Kasus
Dalam studi
kasus ini akan dicontohkan bagaimana cara membuat form registrasi yang di dalamnya
terdapat beberapa jenis
komponen input seperti
textbox, radiobutton combo box,
checkbox dan textarea.
Form tersebut
akan diterapkan dalam
kasus registrasi peserta
suatu seminar secara online.
Untuk keperluan
tersebut terlebih dahulu kita buat tabelnya. Nama Tabel : peserta
Field
id namaPeserta tglLahir tmptLahir
sex
alamat tglDaftar informasi
integer varchar(30) date varchar(30)
varchar(1) text
date
text
auto increment primary key
Keterangan:
Field ‘informasi’
digunakan untuk menyimpan
keterangan darimana peserta
seminar mendapatkan informasi tentang seminar (dari surat kabar,
televisi, atau dari teman).
Field ‘id’ diset
bertipe data integer dan berupa auto increment. Maksud dari auto increment adalah
secara otomatis akan
muncul nomor urut
begitu data baru dimasukkan ke dalam tabel.
Field dengan
tipe data DATE, harus berformat YYYY-MM-DD (tahun-bulan-tgl) Selanjutnya kita
siapkan form untuk input data peserta seminarnya registrasi.php
<html>
<head>
<title>Registrasi Peserta
Seminar</title>
</head>
<body>
<h1>Registrasi Peserta
Seminar</h1>
<form method="post"
action="submit.php">
<table>
<tr><td>Nama
/></td></tr>
Lengkap</td><td>:</td><td><input type="text" name="nama"
<tr><td>Alamat</td><td>:</td><td><textarea
name="alamat"></textarea></td></tr>
<tr><td>Tempat
Lahir</td><td>:</td><td><input type="text" name="tmptLhr"
/></td></tr>
<tr><td>Tanggal
Lahir</td><td>:</td>
<td>
<select name="tgl">
<?php
for($i=1; $i<=31; $i++)
{
echo "<option
value='".$i."'>".$i."</option>";
}
?>
</select>
<select name="bln">
<?php
for($i=1; $i<=12; $i++)
{
echo "<option
value='".$i."'>".$i."</option>";
}
?>
</select>
<select name="thn">
<?php
for($i=1950; $i<=1990; $i++)
{
echo "<option
value='".$i."'>".$i."</option>";
}
?>
</select>
</td>
</tr>
<tr><td>Jenis
Kelamin</td><td>:</td><td><input
type="radio" name="sex" value="L" /> Laki-laki
<br/><input type="radio" name="sex"
value="P" /> Perempuan</td></tr>
<tr><td>Tahu informasi seminar
dari mana?</td><td>:</td><td><input
type="checkbox"
name="info1"
value="TV" /> Televisi<br /><input type="checkbox"
name="info2" value="Koran" />
Surat Kabar<br /><input name="info3" value="Teman" />
Teman</td></tr>
type="checkbox"
<tr><td></td><td></td><td><input
value="Submit" /></td></tr>
</table>
</form>
</body>
</html>
type="submit" name="submit"
Keterangan:
Pusing melihat
script diatas? ☺ Jangan
khawatir, script nantinya akan disertakan melalui email untuk dipelajari.
Form di atas akan tampak seperti di bawah
ini begitu dibuka di browser
Setelah kita
buat form registrasinya, selanjutnya kita buat form untuk proses penyimpanan
data pesertanya.
submit.php
<?php
include "koneksi.php";
$nama = $_POST['nama'];
$alamat = $_POST['alamat'];
$tmptLhr = $_POST['tmptLhr'];
$tglLhr = $_POST['thn'].
"-".$_POST['bln']. "-".$_POST['tgl']; // membentuk format thn- bln-tgl
$sex = $_POST['sex'];
$tglDaftar = date("Y-m-d");
bln-tgl
// membaca tanggal sekarang (recent date)
format thn-
// menggabungkan informasi darimana peserta
mendapatkan info tentang seminar
$info = $_POST['info1']. "
".$_POST['info2']. " ".$_POST['info3'];
$query = "INSERT INTO peserta
(namaPeserta, tglLahir, tmptLahir, sex, alamat, tglDaftar, informasi) VALUES
('$nama', '$tglLhr', '$tmptLhr', '$sex', '$alamat', 'tglDaftar',
'$info' )";
$hasilQuery = mysql_query($query);
if ($hasilQuery) echo "Data sudah
tersimpan ke database";
else echo "Penyimpanan data
gagal";
?>
Berikut adalah contoh memasukan program
dari php ke mysql
1.
Buku
tamu
Program
//Tugas_1.php
<html>
<head>
<title>GUESTBOOK</title>
</head>
<body>
<h1> GUESTBOOK </h1>
<form method="POST"
action="submit.php">
<table>
<tr>
<td> Nama
pengisi </td>
<td> :
</td>
<td>
<input type="text"
name="nama">
</td>
</tr>
<tr>
<td> Email
</td>
<td> :
</td>
<td>
<input
type="text" name="email">
</td>
</tr>
<tr>
<td>Situs Web
</td>
<td> :
</td>
<td>
<input
type="text" name="situs">
</td>
</tr>
<tr>
<td> komentar
</td>
<td> : </td>
<td>
<textarea
name="komentar"> </textarea>
</td>
</tr>
<tr>
<td>
<input
type="submit" name="submit" value="submit">
</td>
</tr>
</table>
</form>
</body>
</html>
//koneksi.php
<?php
mysql_connect('localhost',
'root', '');
mysql_select_db('dbtamu');
?>
//submit.php
<?php
include "koneksi.php";
$nama = $_POST['nama'];
$email = $_POST['email'];
$situs = $_POST['situs'];
$tgl = date("Y-m-d");
$komentar = $_POST['komentar'];
$query = "INSERT INTO bukutamu (id, Nama, Email, Website, Tanggal,
Komentar) VALUES ('', '$nama', '$email', '$situs', '$tgl', '$komentar')";
$hasilQuery = mysql_query($query);
if ($hasilQuery)
echo "Data sudah tersimpan ke database";
else
echo "Penyimpanan data gagal";
?>
Hasil
//Mengisi data
menggunakan form
//Data berhasil
disimpan
//isi database
2.
Form
Pendaftaran Mahasiswa
Program
//form.php
<h1>Form Registrasi Mahasiswa Baru</h1>
<form method="post"
action="submit.php">
<table
border="0">
<tr>
<td>Nama Mahasiswa</td>
<td>:</td>
<td><input type="text"
name="nama"></td>
</tr>
<tr>
<td>Alamat Mahasiswa</td>
<td>:</td>
<td><textarea name="alamat">
</textarea></td>
</tr>
<tr>
<td>Jurusan</td>
<td>:</td>
<td>
<select name="jurusan">
<option value="A"> KEDOKTERAN </option>
<option value="B"> TEKNIK </option>
<option value="C"> MIPA </option>
</select>
</td>
</tr>
<tr>
<td>Tempat Lahir</td>
<td>:</td>
<td><input type="text"
name="tempat"></td>
</tr>
<tr>
<td>Tanggal lahir</td>
<td>:</td>
<td>
<select name="tgl">
<?php
for($i=1; $i<=31; $i++){
echo
"<option
value='".$i."'>".$i."</option>";
}
?>
</select>
<select name="bln">
<?php
for($i=1; $i<=12; $i++){
echo
"<option
value='".$i."'>".$i."</option>";
}
?>
</select>
<select name="thn">
<?php
for($i=1980; $i<=2002; $i++){
echo
"<option
value='".$i."'>".$i."</option>";
}
?>
</select>
</td>
<tr>
<td>No Telepon</td>
<td>:</td>
<td><input type="text"
name="no"></td>
</tr>
<tr>
<td></td>
<td></td>
<td><input type="submit" name="submit"
value="Submit"></td>
</tr>
</table>
</form>
//submit.php
<?php
$nim =
$_POST['nim'];
$nama =
$_POST['nama'];
$alamat =
$_POST['alamat'];
$kodejurusan =
$_POST['jurusan'];
$tempat =
$_POST['tempat'];
$tanggal =
$_POST['thn']."-".$_POST['bln']."-".$_POST['tgl'];
$no =
$_POST['no'];
mysql_connect("localhost", "root", "");
mysql_select_db("registrasi");
$query =
"SELECT max(NIM) as maxnim FROM formulir WHERE NIM LIKE
'$kodejurusan%'";
$hasil =
mysql_query($query);
$data = mysql_fetch_array($hasil);
$maxnim =
$data['maxnim'];
$noUrut =
(int) substr($maxnim, 5, 4);
$noUrut++;
$newnim =
$kodejurusan."-09-". sprintf("%04s", $noUrut);
switch($kodejurusan){
case A :
$jurusan="KEDOKTERAN";
break;
case B :
$jurusan="TEKNIK";
break;
case C :
$jurusan="MIPA";
break;
}
$query =
"INSERT INTO formulir (NIM, NamaMahasiswa, Alamat, Jurusan, TempatLahir,
TanggalLahir, NoTelepon) VALUES ('$newnim', '$nama', '$alamat', '$jurusan',
'$tempat', '$tanggal', '$no')";
$hasil =
mysql_query($query);
if ($hasil)
echo "<h1>Selamat Datang
Mahasiswa Baru</h1>";
else {
echo
"<h1>Input data gagal</h1>";
echo
"<a href='form.php'>Input Data</a>";
}
?>
Hasil
Form
Tersimpan
Database