inputan berasal
dari form HTML.
forminput.html
<html>
<head>
<title>Input
data</title>
</head>
<body>
<h2>Input Data
Karyawan</h2>
<form
action="inputdata.php" method="post">
Nama : <br>
<input type="text"
name="nama"><p>
Tanggal Lahir :<br>
<input type="text" name="tgl">Format
yyyy-mm-dd<p>
Jenis Kelamin :<br>
<select
name="kelamin">
<option>Laki-laki</option>
<option>Perempuan</option>
</select>
<p>
Alamat :<br>
<textarea cols="30"
rows="5" name="alamat"></textarea><p>
<input
type="submit">
</form>
</body>
</html>
Kode di atas
adalah kode HTML untuk membuat form inputan, yang nantinya akan kita masukkan
ke database.
Pada
tag <form
action="inputdata.php" method="post">, action
berarti kode PHP yang akan memproses inputan jika diklik tombol submit. Methode
yang digunakan adalah POST. Secara umum ada 2 metode pengiriman data ke server,
yaitu POST dan GET. Bedanya jika metode GET, parameter akan ditampilkan di URL.
Query INSERT
Query INSERT
adalah perintah SQL untuk memasukkan data ke tabel di database MySQL
Sintaks SQL
:
INSERT INTO nama_tabel
[(col_name,...)] VALUES(nilai1, nilai2,...)
Contoh :
INSERT INTO datakaryawan
VALUES(null,'Desrizal','1981-12-13','Laki-laki','Jl. raya No. 12, Pekanbaru')
Kode di atas
adalah SQL, cara menjalankannya melalui PHP adalah dengan menggunakan fungsi mysql_query().
Untuk lebih jelas kita lihat contoh di bawah :
inputdata.php
<?php
//lakukan koneksi ke
MySQL
mysql_connect("localhost","root","");
//Pilih database tempat
tabel akan dibuat
mysql_select_db("databaseku");
//ambil data dari form
method POST
$nama = htmlspecialchars($_POST['nama']);
$tgl = htmlspecialchars($_POST['tgl']);
$kelamin = htmlspecialchars($_POST['kelamin']);
$alamat = htmlspecialchars($_POST['alamat']);
$masuk = mysql_query("INSERT INTO datakaryawan VALUES(null,
'$nama','$tgl','$kelamin','$alamat')");
if($masuk){
echo "Data
berhasil diinput";
}else{
echo "Gagal";
}
?>
- Untuk mengambil data dari form HTML dengan metode POST adalah $_POST['namafield']
- Untuk mengambil data dari form HTML dengan metode GET adalah $_GET['namafield']
- htmlspecialchars() berguna untuk mengubah kode HTML < dan > menjadi < dan > gunanya untuk keamanan, jika ada user yang nakal mengetikkan kode HTML yang merusak penampilan web kita.
- null artinya tidak ada nilai, karena pada saat kita buat create tabel datakaryawan, field karyawanid diset auto_incerement, artinya akan otomatis berisi nilai integer yang berurut
Setelah kita
belajar bagaimana menginput data dari form ke tabel di database mysql, sekarang
kita belajar mengambil data dari tabel di MySQL. Langkah-langkahnya adalah
sebagai berikut :
- Koneksi ke database MySQL, gunakan fungsi mysql_connect()
- Pilih database, gunakan fungsi mysql_select_db()
- Lakukan query SELECT, gunakan fungsi mysql_query()
Sintaks SQL :
SELECT nama_field FROM nama_tabel
Contoh :
SELECT nama, tgl_lahir FROM
datakaryawan
Atau, jika ingin memilih seluruh field, gunakan tanda
bintang (*)
SELECT * FROM datakaryawan
- Masukkan hasil query ke dalam array, gunakan fungsi mysql_fetch_array()
- Print data dari array, gunakan fungsi echo
Sekarang
kita lihat contoh kodenya :
tampil.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
//Pilih database tempat tabel akan
dibuat
mysql_select_db("databaseku");
//lakukan query select
$ambildata =
mysql_query("SELECT * FROM datakaryawan");
while($data = mysql_fetch_array($ambildata)){
echo "<a
href=detail.php?no=".$data['karyawanid'].">".$data['nama']."</a>
| ";
echo "<a
href=delete.php?no=".$data['karyawanid'].">delete</a><br>";
}
?>
Untuk
mendelete data yang ada di database adalah dengan cara melakukan query DELETE
Sintaks SQL:
DELETE FROM nama_tabel WHERE
namafield=kondisi
Contoh :
DELETE FROM datakaryawan WHERE
karyawanid=2
Pada contoh
tampil di atas, jika anda jalankan akan ada link delete, yang kalau diklik akan
mengarah file delete php, misal : delete.php?no=1
Sekarang
mari kita buat kode PHPnya
delete.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
//Pilih database tempat tabel akan
dibuat
mysql_select_db("databaseku");
//ambil nilai variabel no yang
diambil dari URL
$nomor = $_GET['no'];
//lakukan query DELETE
$del = mysql_query("DELETE FROM
datakaryawan WHERE karyawanid=$nomor");
if($del){
echo "Data berhasil di delete";
}else{
echo "Gagal";
}
?>
Untuk
melakukan update database mysql kita harus melakukan query UPDATE
Sintaks SQL
:
UPDATE nama_tabel SET
nama_field=nilai, nama_field2=nilai2,...
WHERE nama_field=kondisi
Contoh :
UPDATE datakarayawan SET
nama='Desrizal', alamat='Tembagapura'
WHERE karyawanid=1
Oke mari
sekarang kita buat program untuk update data karyawan. Pada contoh tampil.php,
jika nama karyawan diklik akan menuju file detail.php
Buat form
untuk Update, detail.php
<form
action="update.php" method="post">
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
//Pilih database tempat tabel akan
dibuat
mysql_select_db("databaseku");
//ambil nilai variabel no yang
diambil dari URL
$nomor = $_GET['no'];
//lakukan query SELECT
$data = mysql_query("SELECT *
FROM datakaryawan WHERE karyawanid=$nomor");
while($d =
mysql_fetch_array($data)){
echo "Karyawan id : ".$d['karyawanid']."<p>";
echo "<input type=\"hidden\" name=\"id\"
value=\"".$d['karyawanid']."\">";
echo "Nama :<br>";
echo "<input type=\"text\" name=nama
value=\"".$d['nama']."\"><p>";
echo "Jenis Kelamin :<br>";
echo "<select name=kelamin>";
if($d['kelamin']=="Laki-laki"){
echo "<option
selected>Laki-laki</option>
<option>Perempuan</option>\n";
}else{
echo
"<option>Laki-laki</option>
<option
selected>Perempuan</option>\n";
}
echo "</select><p>";
echo "Alamat :<br>";
echo "<textarea
name=alamat>".$d['alamat']."</textarea><p>";
}
?>
<input type=submit
value=update>
</form>
Jika form
pada kode diatas diklik, maka akan menjalankan file update.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
//Pilih database tempat tabel akan
dibuat
mysql_select_db("databaseku");
//ambil nilai variabel no yang diambil
dari form POST
$id =
htmlspecialchars($_POST['id']);
$nama =
htmlspecialchars($_POST['nama']);
$kelamin =
htmlspecialchars($_POST['kelamin']);
$alamat =
htmlspecialchars($_POST['alamat']);
//lakukan query update
$update = mysql_query("UPDATE
datakaryawan
SET nama='$nama',
kelamin='$kelamin',
alamat='$kelamin'
WHERE karyawanid=$id");
if($update){
echo "Data berhasil diupdate";
}else{
echo "gagal";
}
?>
Fungsi :
Menghitung jumlah baris dari query yang dihasilkan
Sintaks :
mysql_num_rows ( resource $result )
Parameter :
$result,
hasil dari query yang sudah dijalankan.
Contoh :
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
//Pilih database tempat tabel akan
dibuat
mysql_select_db("databaseku");
$query = mysql_query("SELECT *
FROM datakaryawan WHERE kelamin='Perempuan'");
$jumlah = mysql_num_rows($query);
echo "Jumlah karyawan Perempuan
adalah : $jumlah orang";
?>
Sekarang
mari kita lihat contoh lainnya, yaitu buku tamu.
Struktur
tabel bukutamu di MySQL
CREATE TABLE `bukutamu` (
`nomor` int(10) NOT NULL auto_increment,
`nama` varchar(50) NOT NULL,
`email` varchar(50) NOT NULL,
`waktu` varchar(30) NOT NULL,
`komentar` text NOT NULL,
PRIMARY KEY (`nomor`)
)
bukutamu.php
<html>
<head><title>Buku
Tamu</title></head>
<body>
<font face=arial size=2>
<h2>Buku Tamu</h2>
<form
action="isibukutamu.php" method="post">
Nama:<br>
<input type="text"
name="nama"><p>
Email:<br>
<input type="text"
name="email"><p>
Komentar:<br>
<textarea
name="komentar" cols=40 rows=10></textarea>
<p><input
type="submit" value="Kirim">
</form>
<hr>
<!---kode PHP untuk menampilkan
bukutamu------->
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
//Pilih database tempat tabel akan
dibuat
mysql_select_db("databaseku");
$data = mysql_query("SELECT *
FROM bukutamu ORDER BY nomor DESC");
$w = 1;
while($d=mysql_fetch_array($data)){
//buat warna selang-seling
if($w == 1){
$warna = "#ffffff";
$w = 0;
}else{
$warna = "#efefef";
$w = 1;
}
echo "<div
style=\"background-color:$warna;padding:5\">";
echo "Nama : ".$d['nama']."<br>";
echo "Email : ".$d['email']."<br>";
echo "<font size=1>Waktu :
".$d['waktu']."</font><br>";
echo "<b>Komentar :</b><br>".$d['komentar'];
echo "</div><p>\n";
}
?>
</font>
</body>
</html>
isibukutamu.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
//Pilih database tempat tabel akan
dibuat
mysql_select_db("databaseku");
$nama =
htmlspecialchars($_POST['nama']);
$email =
htmlspecialchars($_POST['email']);
$komentar =
htmlspecialchars($_POST['komentar']);
$waktu = date("H:i d M
Y");
//jika user tekan enter atau
barisbaru, kasih tag <br>
$komentar = nl2br($komentar);
$isi = mysql_query("INSERT INTO
bukutamu VALUES(null,'$nama','$email','$waktu','$komentar')");
if($isi){
header("location:bukutamu.php");
}else{
echo "Gagal";
}
?>
Tidak ada komentar:
Posting Komentar