300 likes | 552 Views
PHP + MySQL. Apa Itu MySQL MySQL adalah salah satu jenis database, tempat meletakkan data secara terstruktur berupa tabel-tabel dan kita bisa melakukan query atau mengolah data tersebut dengan SQL (Structured Query Languange ). K oneksi ke MySQL Melalui PHP
E N D
ApaItuMySQL MySQLadalahsalahsatujenis database, tempatmeletakkan data secaraterstrukturberupatabel-tabeldankitabisamelakukan query ataumengolah data tersebutdengan SQL (Structured Query Languange)
KoneksikeMySQLMelalui PHP UntukmelakukankoneksikeMySQLkitamenggunakanfungsimysql_connect() Sintaks : mysql_connect(host, username, password) Contoh : <?php $koneksi = mysql_connect("localhost","root",""); if($koneksi){ echo"Koneksiberhasil"; } else{ echo"Gagal"; } ?> JikaandatelahberhasilkoneksikeMySQL, andabisamelakukanapapunterhadap database tersebuttergantunghak-hakanda, andabisabuat database, buattabeldanmelakukan query
MembuatTabelMelalui PHP dan Query Selainmelaluiphpmyadmin, kitajugabisamembuattabellangsungmelalui PHP, dimanakitamengeksekusi query CREATE TABLE, contoh : • <?phpmysql_connect("localhost","root",""); //koneksikeMySQL • mysql_select_db("databaseku"); //Pilih database • $query = "CREATE TABLE datakaryawan( karyawanidint(5) auto_increment primary key, namavarchar(30), tgl_lahir date, kelaminvarchar(10), alamattinytext )"; • $buat = mysql_query($query); //jalankan query if($buat){ echo "Tabeldatakaryawanberhasildibuat"; } Else { echo"Gagal"; } ?>
ManipulasiTabelMySQL Cara Insert keTabelMySQL Cara Menampilkan Rows TabelMySQL Cara Delete Rows TabelMySQL Cara Update TabelMySQL mysql_num_rows - Menghitungjumlahbarisdari query yang dihasilkan ContohBukuTamu
Cara Insert keTabelMySQL 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> TanggalLahir :<br> <input type="text" name="tgl">Format yyyy-mm-dd<p> JenisKelamin :<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> • Kodediatasadalahkode HTML untukmembuat form inputan, yang nantinyaakankitamasukkanke database. • Pada tag <form action="inputdata.php" method="post">, action berartikode PHP yang akanmemprosesinputanjikadikliktombol submit. Methode yang digunakanadalah POST. Secaraumumada 2 metodepengiriman data ke server, yaitu POST dan GET. Bedanyajikametode GET, parameter akanditampilkandi URL.
Query INSERT Query INSERT adalahperintah SQL untukmemasukkan data ketabeldi 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') Kodediatasadalah SQL, caramenjalankannyamelalui PHP adalahdenganmenggunakanfungsimysql_query().
inputdata.php <?php mysql_connect("localhost","root",""); mysql_select_db("databaseku"); $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 berhasildiinput"; }else{ echo "Gagal"; } ?> • Untukmengambil data dari form HTML denganmetode POST adalah$_POST['namafield'] • Untukmengambil data dari form HTML denganmetode GET adalah$_GET['namafield'] • htmlspecialchars() bergunauntukmengubahkode HTML < dan > menjadi<dan>gunanyauntukkeamanan, jikaada user yang nakalmengetikkankode HTML yang merusakpenampilan web kita. • null artinyatidakadanilai, karenapadasaatkitabuat create tabeldatakaryawan, field karyawaniddisetauto_incerement, artinyaakanotomatisberisinilai integer yang berurut
Cara Menampilkan Rows TabelMySQL Setelahkitabelajarbagaimanamenginput data dari form ketabeldi database mysql, sekarangkitabelajarmengambil data daritabeldiMySQL. Langkah-langkahnyaadalahsebagaiberikut : • Koneksike database MySQL, gunakanfungsimysql_connect() • Pilih database, gunakanfungsimysql_select_db() • Lakukanquery SELECT, gunakanfungsimysql_query() Sintaks SQL : SELECT nama_field FROM nama_tabel Contoh : SELECT nama, tgl_lahir FROM datakaryawan Atau, jikainginmemilihseluruh field, gunakantandabintang (*) SELECT * FROM datakaryawan • Masukkanhasil query kedalam array, • gunakanfungsimysql_fetch_array() • Print data dari array, gunakanfungsiecho
tampil.php <?php mysql_connect("localhost","root",""); mysql_select_db("databaseku"); $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>"; } ?>
Cara Delete Rows TabelMySQL Untukmendelete data yang adadi database adalahdengancaramelakukan query DELETE Sintaks SQL: DELETE FROM nama_tabel WHERE namafield=kondisi Contoh : DELETE FROM datakaryawan WHERE karyawanid=2 Padacontohtampildiatas, jikaandajalankanakanada link delete, yang kalaudiklikakanmengarah file delete php, misal : delete.php?no=1
delete.php <?php mysql_connect("localhost","root",""); mysql_select_db("databaseku"); $nomor=$_GET['no']; $del=mysql_query("DELETE FROM datakaryawan WHERE karyawanid=$nomor"); if($del){echo"Data berhasildi delete";}else{echo"Gagal"; } ?>
Cara Update TabelMySQL Untukmelakukan update database mysqlkitaharusmelakukan 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
Buat form untuk Update, detail.php <form action="update.php" method="post"> <?phpmysql_connect("localhost","root","");mysql_select_db("databaseku"); $nomor=$_GET['no']; $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"JenisKelamin :<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 padakodediatasdiklik, makaakanmenjalankan file update.php <?php mysql_connect("localhost","root",""); mysql_select_db("databaseku"); $id=htmlspecialchars($_POST['id']); $nama=htmlspecialchars($_POST['nama']); $kelamin=htmlspecialchars($_POST['kelamin']);$alamat=htmlspecialchars($_POST['alamat']); $update=mysql_query("UPDATE datakaryawanSET nama='$nama',kelamin='$kelamin',alamat='$kelamin'WHERE karyawanid=$id"); if($update){echo"Data berhasildiupdate";}else{echo"gagal";} ?>
mysql_num_rows Fungsi : Menghitungjumlahbarisdari query yang dihasilkan Sintaks : mysql_num_rows ( resource $result ) Parameter : $result, hasildari query yang sudahdijalankan. Contoh : <?php mysql_connect("localhost","root","");/ mysql_select_db("databaseku"); $query=mysql_query("SELECT * FROM datakaryawan WHERE kelamin='Perempuan'"); $jumlah=mysql_num_rows($query); echo"JumlahkaryawanPerempuanadalah : $jumlahorang"; ?>
ContohBukuTamu Sekarangmarikitalihatcontohlainnya, yaitubukutamu. StrukturtabelbukutamudiMySQL 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>BukuTamu</title></head> <body> <font face=arial size=2> <h2>BukuTamu</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>
bukutamu.php (lanjutan) • <!---kode PHP untukmenampilkanbukutamu-------> • <?phpmysql_connect("localhost","root",""); • mysql_select_db("databaseku"); • $data=mysql_query("SELECT * FROM bukutamu ORDER BY nomor DESC");$w=1;while($d=mysql_fetch_array($data)) • {//buatwarnaselang-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 mysql_connect("localhost","root",""); 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 ataubarisbaru, 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";} ?>