Minggu, 28 April 2019

Materi Pemrograman [bagian 17] : Hapus Data dengan PHP-MySQL

Yohaaa.... Akhirnya kita sampai juga pada materi pada modul terakhir. Mungkin untuk ke depannya kita akan belajar dengan modul yang baru!! Kali, ini sesuai dengan judulnya, kita akan belajar mengenai bagaimana cara menghapus data dengan PHP - MySQL.

Konsep utama prosesnya adalah menjalankan query set DELESTE FROM ... pada script PHP. Untuk lebih jelasnya, kita langsung terapkan pada studi kasus, seperti halnya pada bab sebelumnya, yaitu tentang data mahasiswa. Misalkan data awalnya seperti berikut ini.
nim                        varchar(5)           primary key
nama                     varchar(30)
alamat                  (text)
sex                         varchar(1)
tgllahir                  date
NIM
NAMA
ALAMAT
SEX
TGLLAHIR
M0001
M0002
M0003
A
B
C
SOLO
JAKARTA
BANDUNG
L
L
P
1979-10-20
1982-09-10
1980-11-07

Studi Kasus 1
Pada kasus ini, kita akan membuat script untuk menghapus data mahasiswa dengan post method. Adapun skenarionya adalah sebagai berikut. User diminta memasukkan NIM mahasiswa yang akan dihapus melalui form. Namun, bila NIM yang akan dihapus tidak ada dalam database, maka akan muncul pesan bahwa data tersebut tidak ada.
Berikut ini adalah tampilan scriptnya.

Studi Kasus 2
Untuk kasus ini, dengan data mahasiswa yang sama dengan GET method atau melalui link berparameter. Link ini akan diletakkan di tipa baris data mahasiswa. Bentuk link berparameter yang akan digunakan untuk menghapus data adalah:
http://hapus02.php?proses=hapus&nim=xxx
dengan 'xxx' adalah NIM mahasiswa yang akan dihapus.

Materi Pemrograman [Bagian 16]: Update Data dengan PHP-MySQL



Halo-halo... Kita ketemu lagi setelah sekian hari, nah kali ini kita bakal belajar cara update data dengan PHP-MySQL.

Proses update data dengan PHP dan MySQL biasanya memiliki mekanisme:

1.       Tampilkan list data terlebih dahulu.

2.       Buat link tiap baris data yang menuju proses update. Link memuat parameter yang di dalamnya terdapat value sebagai acuan proses update data.

3.       Bila link diklik akan muncul form berisi data yang akan diedit.

Prinsipnya adalah menjalankan query update pada SQL-nya.

UPDATE namaTabel SET namafield = value WHERE ...

Sebagai contoh, kita akan mengupdate data mahasiswa, dimana tabel untuk menyimpan data mahasiswa berbentuk seperti di bawah ini.

nim                        varchar(5)           primary key

nama                     varchar(30)

alamat                  (text)

sex                         varchar(1)

tgllahir                  date

sebagai contoh data awalnya sebagai berikut:

NIM
NAMA
ALAMAT
SEX
TGLLAHIR
M0001
M0002
M0003
A
B
C
SOLO
JAKARTA
BANDUNG
L
L
P
1979-10-20
1982-09-10
1980-11-07



Langkah yang pertama dibuat adalah menampilkan link datanya. Data disajikan dalam bentuk tabel dengan 6 kolom. 5 kolom untuk data awal dan kolom ke-6 untuk link edit.

list.php

<?php

mysql_connect("localhost", "root", "");

mysql_select_db("data");

// query SQL untuk memunculkan semua mahasiswa

$query = "SELECT * FROM mhs";

$hasil = mysql_query($query);

echo "<table border='1'>";

echo "<tr><td>NIM</td>

        <td>Nama Mahasiswa</td>

        <td>Alamat</td>

        <td>Sex</td>

        <td>Tgl Lahir</td>

        <td>Action</td></tr>";

while ($data = mysql_fetch_array($hasil))

{

    echo "<tr><td>".$data['nim']."</td>

            <td>".$data['nama']."</td>

            <td>".$data['alamat']."</td>

            <td>".$data['sex']."</td>

            <td>".$data['tgllahir']."</td>

            <td>Edit</td></tr>";

}

echo "</table>";

?>



Selanjutnya, link editnya berbentuk seperti berikut:


Maka untuk memunculkan link di atas maka isis ‘action’, scriptnya sebagai berikut:

<?php

mysql_connect("localhost", "root", "");

mysql_select_db("data");

// query SQL untuk memunculkan semua mahasiswa

$query = "SELECT * FROM mhs";

$hasil = mysql_query($query);

echo "<table border='1'>";

echo "<tr><td>NIM</td>

        <td>Nama Mahasiswa</td>

        <td>Alamat</td>

        <td>Sex</td>

        <td>Tgl Lahir</td>

        <td>Action</td></tr>";

while ($data = mysql_fetch_array($hasil))

{

    echo "<tr><td>".$data['nim']."</td>

            <td>".$data['nama']."</td>

            <td>".$data['alamat']."</td>

            <td>".$data['sex']."</td>

            <td>".$data['tgllahir']."</td>

            <td><a href='edit.php?nim=".$data['nim']."'>Edit</a></td></tr>";

}

echo "</table>";

?>




Untuk script di atas masuk ke script list.php untk tabel dengan link edit yang bisa diklik, sehingga dapat membuka form berikutnya. Link di atas diedit berdasarkan parameter ‘NIM’.

Langkah selanjutnya adalah membuat script edit.php untuk memunculkan form edit sekaligus data mahasiswa yang akan diedit. Bagaimana caranya? Dengan query SELECT dengan nim sebagai syaratnya. Dalam hal ini, nim dalam link edit sebagai syarat.

edit.php

<?php

mysql_connect("localhost", "root", "");

mysql_select_db("data");

$nim = $_GET['nim'];

$query = "SELECT * FROM mhs WHERE nim = '$nim'";

$hasil = mysql_query($query);

$data  = mysql_fetch_array($hasil);

echo "<form method='post' action='update.php'>";

echo "<table>";

echo "<tr><td>NIM</td><td>:</td> <td><input type='text' name='nim' value='".$data['nim']."'></td></tr>";

echo "<tr><td>Nama Mahasiswa</td><td>:</td> <td><input type='text' name='nama' value='".$data['nama']."'></td></tr>";

echo "<tr><td>Alamat</td><td>:</td> <td><textarea name='alamat'>".$data['alamat']."</textarea></td></tr>";

echo "<tr><td>Sex</td><td>:</td> <td><input type='radio' name='sex' value='L'> Laki-Laki <input type='radio' name='sex' value='P'> Perempuan</td></tr>";

echo "<tr><td>Tgl Lahir</td><td>:</td><td> <select name='tgl'>";

for ($i=1; $i<=31; $i++)

{

    echo "<option value='".$i."'>".$i."</option>";

}

echo "</select> <select name='bln'>";

for ($i=1; $i<=12; $i++)

{

    echo "<option value='".$i."'>".$i."</option>";

}

echo "</select> <select name='thn'>";

for ($i=1980; $i<=1997; $i++)

{

    echo "<option value='".$i."'>".$i."</option>";

}

echo "</select> </td></tr>";

echo "</table>";

echo "<input type='submit' name='submit' value='Submit'>";

echo "</form>";

?>




Konsep radiobutton yanga kan dicheked digunakan pada tanggal lahir. Caranya adalah dengan menggunakan konsep IF. Untuk memecah tanggal, yaitu dengan menggunakan function explode(). Lalu sekarang, bagaimana bila NIM yang diubah? Misal, NIM ‘M0001’ diubah menjadi ‘M0002’, SQLnya sebagai berikut:

UPDATE mhs SET nim=’M0002’ WHERE nim=’M0001’;

Jika diperhatikan, script di atas perlu NIM lama guna proses update. Tapi bila komponen textboxpada form edit untuk NIM di atas dirubah isinya, maka NIM awal akan hilang, lalu bagaimana solusinya?

Maka yang harus kita lakukan adalah membuat komponen hidden input untuk menyimpan NIM ynag lama. NIM ynag lama ini akan dijadikan acuan proses updatenya. Letak hidden input bisa diletakkan di sembarang tempat di dalam form. Konsep untuk script updatenya hanyalah menjalankan query SQL UPDATE.


Rabu, 24 April 2019

Materi Pemrograman [bagian 15] : Konsep Menampilkan Data MySQL dengan PHP


Yuhuuuu... Welcome!!

Kali ini, pembahasan kita akan berlanjut ke tingkat berikutnya. Jika sebelumnya kita belajar mengenai bagaimana cara menyimpan data pada PHP ke dalam tabel database. Sekarang, kita mau lanjut ke konsep bagaimana menampilkan data di database dengan PHP.

Konsep dasar menampilkan data dengan script PHP adalah:

1.       Buat query SQL untuk menampilkan data (gunakan SELECT)

2.       Jalankan query tersebut dengan menggunakan mysql_query() di PHP

3.       Baca data hasil query tersebut dengan proses fetching. Gunakan perintah mysql_fetch_array() di PHP. Hasil dari mysql_fetch_array() ini adalah suatu nilai dalam bentuk array asosiatif dengan nama field tabel sebagai indeksnya.

4.       Tampilkan data dari proses fetching sesuai nama field yang ada dalam array.

Oke, langsung saja! Gak perlu banyak cingcong berikut ini contohnya. Kita akan menggunakan contoh kasus seperti bab sebelumnya.

Dalam contoh ini, kita akan mencoba menampilkan data peserta khususnya pada field Nama Peserta, Tanggal Lahir, Jenis Kelamin, Alamat, Tanggal Daftar, dan Tempat Lahir.

Langkah pertama, kita siapkan script untuk koneksi ke MySQLnya dan databasenya.

koneksi.php

<?php

mysql_connect("localhost", "root", "root");

mysql_select_db("contoh");

?>

Langkah kedua, kita buat script untuk menampilkan datanya.

view.php

<html>

<head>

<title>Data Peserta</title>

</head>

<body>

<h1>Data Peserta</h1>

<table border="1">

<tr><th>Nama Lahir</th><th>Alamat</th>Peserta</th><th>Tgl Lahir</th><th>Tempat<th>Jenis Kelamin</th><th>Tgl Daftar</th></tr>

// letak script menampilkan data //

</table>

</body>

</html>

Ternyata, script di atas hanya untuk membuat judul tabelnya, kawan. Sekarang barulah script untuk menampilkan datanya.

<html>

<head>

<title>Data Peserta</title>

</head>

<body>

<h1>Data Peserta</h1>

<table border="1">

<tr><th>Nama</th><th>Alamat</th>Peserta</th><th>Tgl Lahir</th><th>Tempat Lahir<th>Jenis Kelamin</th><th>Tgl Daftar</th></tr>

<?php

include "koneksi.php";

$query = "SELECT * FROM peserta";

$hasil = mysql_query($query);

while ($data = mysql_fetch_array($hasil))

{

echo "<tr><td>".$data['namaPeserta']."</td><td>".$data['tglLahir']."</td> <td>".$data['tmptLahir']."</td><td>".$data['alamat']."</td> <td>".$data['sex']."</td><td>".$data['tglDaftar']."</td></tr>";

}

?>

</table>

</body>

</html>

Keterangan:

Proses fetching data menggunakan mysql_fetch_array() dilakukan per baris data dari hasil query. Sehingga untuk memfetching semua data hasil query, kita gunakan looping WHILE.

Selama masih ada baris data hasil query yang bisa difetch, maka looping ini akan terus berjalan dan baru akan berhenti bila sudah tidak ada baris lagi yang bisa difetch (akhir dari baris data).

Setiap kali data difetch, selanjutnya langsung ditampilkan dengan echo.

Catatan:

Bila data hasil query SELECT hanya terdiri dari sebuah baris data, maka tidak perlu menggunakan looping WHILE.

Array  $data['namaPeserta']  digunakan  untuk menampilkan  data terkait  dengan  field ‘namaPeserta’ yang ada dalam tabel.

PENTING!!

Besar  kecilnya  huruf  dalam  indeks  array  harus  sama  dengan  nama  fieldnya.  Jika tulisannya berbeda, maka data tidak akan muncul.

Hasil dari script view.php di atas adalah sebagai berikut
1. Dengan menggunakan tabel dan data yang ada dalam pembahasan modul ini di atas,   buatlah   script   untuk   menampilkan   data   peserta   berdasarkan   jenis kelaminnya.
Adapun tampilan datanya diharapkan seperti di bawah ini
Jumlah Data : …
Dengan ‘No’ adalah nomor urut 1, 2, 3, … (bukan nomor ID data dalam tabel database)
Terlebih dahulu buatlah form berisi pilihan menggunakan  Radio Button untuk memilih jenis kelamin dari peserta yang akan ditampilkan. Selanjutnya setelah dipilih  jenis  kelaminnya,  dan  kemudian  disubmit,  maka  akan  muncul  daftar peserta berdasarkan jenis kelamin yang dipilih.













Minggu, 21 April 2019

Materi Pemrograman [bagian 14] : Konsep INSERT DATA dengan PHP


Halo... Hai... Siapa saja... Selamat datang!!

Setelah materi sebelumnya, kalian pasti lebih membutuhkan penyegaran, bukan? Sayang sekali, itu tidak berlaku di sini. Karena postingan ini benar-benar murni untuk tugas, dan bukan untuk menyebarkan virus kpopers. Hehe.

Setelah mengenal beberapa bentuk perintah SQL, kali ini kalian akan mengenal bagaimana menerapkan konsep tersebut dengan script 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’ adalah nama komputer di mana MySQLnya berada, kalo di komputer itu sendiri maka nama hostnya ‘localhost’, bisa juga diberi nomor IP komputernya.

‘nama user’ yaitu nama user yang memiliki hak akses ke MySQL nya.

‘password’ adalah password dari nama user yang punya hak akses ke MySQL.

‘nama DB’ merupakan 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                            integer                 auto increment                 primary key

namaPeserta     varchar(30)

tglLahir                date

tmptLahir            varchar(30)

sex                         varchar(1)

alamat                  text

tglDaftar              date

informasi             text

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 Lengkap</td><td>:</td><td><input type="text" name="nama" /></td>

            </tr>

            <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" type="checkbox" n ame="info2" value="Koran" /> Surat Kabar<br /><input type="checkbox" name="info3"  value="Teman" /> Teman</td>

            </tr>

            <tr>

                <td></td><td></td><td><input type="submit" name="submit" value="Submit" /></td>

            </tr>

        </table>

        </form>

    </body>

</html>



Keterangan:

Pusing melihat script diatas? Jangan khawatir, kalian tidak sendiri.

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"); // membaca tanggal sekarang (recent date) format thn-bln-tgl



// 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";

?>

1. Buatlah form untuk keperluan pengisian buku tamu (guestbook) dengan data yang diisikan sbb:
Nama pengisi Email Situs Web Komentar
Buat pula sebuah tabel dalam database untuk menyimpan data isian buku tamu tersebut dengan field sbb:
Id Nama Email Website Tanggal Komentar
integer varchar(30) varchar(30) varchar(30) date text
auto increment Primary Key
Keterangan:
Field ‘tanggal’ digunakan untuk menyimpan informasi tanggal kapan komentar tersebut dikirim (tanggal ini secara otomatis membaca tanggal ketika komentar buku tamu disubmit)
















Upload File dengan PHP dan MySQL

Upload file adalah salah satu bagian terpenting dalam membuat aplikasi, khususnya yang berbasis web.Contohnya saat kita harus mengupload ent...