Modul PHP PDF
Modul PHP PDF
Membuat Aplikasi
Cread-Read-Update-Delete
Sederhana
Umbara
2013
Umbara
Page 1
Persiapan . 3
Aplikasi yang diperlukan ... 3
XAMPP 3
Netbeans IDE ............ 5
Design Database .... 5
Membuat Database Dan Table . 6
Membuat Project 7
Menggunakan Netbeans 7
Design Form 8
Membuat Form Tampil 8
Membuat Form Input 10
Membuat Form Edit ...12
Coding13
Membuat File connect.php .13
Membuat File simpan.php ..14
Membuat File update.php 15
Membuat File hapus.php 15
Menjalankan Program . 16
Cara Menjalankan Program PHP di Netbeans . 16
Keterangan Fungsi PHP 17
Konsep PDO (PHP Data Objects . 17
Koneksi Ke Basis Data MySQL Dengan PDO .. 18
Melakukan Koneksi Ke Basis Data ............................................. 18
Menggunakan Kueri .. 18
Mengambil Data .. 19
Pembahasan Lanjut PDO 20
Kesimpulan .. 21
Tentang Penulis 21
Umbara
Page 2
I. Persiapan
i.
ii.
XAMPP
XAMPP merupakan singkatan dari X (empat system operasi
apapun), Apache, MySQL, PHP,Perl. XAMPP adalah tool yang menyediakan paket perangkat lunak
dalam satu buah paket.
Dalam paket XAMPP sudah terdapat Apache (web server), MySQL (database), PHP (server side
scripting), Perl, FTP server, phpMyAdmin dan berbagai pustaka bantu lainnya. Dengan menginstall
XAMPP maka Anda tidak perlu lagi melakukan instalasi dan melakukan konfigurasi web server
Apache, PHP dan MySQL secara manual. XAMPP akan otomatis menginstalasi dan konfigurasi untuk
Anda.
Berikut ini penjelasan tentang web server X Apache, MySQL, PHP, Perl :
Apache= Apache sudah berkembang sejak versi pertamanya. Sampai saat ditulisnya artikel ini versi
terakhirnya yang ada yaitu Apache version 2.4.4. Apache bersifat open source, artinya setiap orang
boleh menggunakannya, mengambil atau bahkan mengubah kode programnya.
Tugas utama apache adalah menghasilkan halaman web yang benar kepada peminta, berdasarkan
kode PHP yang dituliskan oleh pembuat halaman website. Jika diperlukan juga berdasarkan kode
PHP yang dituliskan, maka dapat saja suatu database diakses terlebih dahulu (misalnya dalam
MySQL) untuk mendukung halaman web yang dihasilkan.
PHP= Bahasa pemrograman PHP merupakan bahasa pemrograman untuk membuat website yang
bersifat server side scripting. PHP memungkinkan kita untuk membuat halaman website yang
bersifat dinamis. PHP dapat dijalankan pada berbagai macam Operating System (OS), misalnya
Windows, Linux dan Mac OS. Selain Apache, PHP juga mendukung beberapa web server lain,
misalnya Microsoft IIS, Caudium, PWS dll.
PHP dapat memanfaatkan database untuk menghasilkan halaman web yang dinamis. Sistem
manajemen database yang sering digunakan bersama PHP adalah MySQL. Namun PHP juga
mendukung system manajemen Database Oracle, Microsoft Acces, Interbase, d-Base, PostgreSQL
dsb.
Umbara
Page 3
Hingga kini PHP sudah berkembang hingga versi ke 5.4.16. PHP 5xxx mendukung penuh Object
Oriented Programing (OOP), integrasi XML, mendukung semua ekstensi terbaru MySQL,
pengembangan web services dengan SOAP dan REST, serta ratusan peningkatan kemampuan
lainnya dibandingkan versi sebelumnya. Sama dengan web server lainnya PHP juga bersifat open
source sehingga setiap orang dapat menggunakannya dengan gratis.
MySQL= perkembangannya disebut SQL yang merupakan kepanjangan dari Structured Query
Language. SQL merupakan bahasa terstruktur yang khusus digunakan untuk mengolah database.
SQL pertama kali didefinisikan oleh American National Standards Institute (ANSI) pada tahun
1986. MySQL adalah sebuah sistem manajemen database yang bersifat open source.
MySQL merupakan pasangan serasi dari PHP. MySQL dibuat dan dikembangkan oleh MySQL AB yang
berada di Swedia. MySQL dapat digunakan untuk membuat dan mengola database beserta isinya.
Kita dapat memanfaatkan MySQL untuk menambahkan, mengubah dan menghapus data yang
berada dalam database.
MySQL merupakan sistem manajemen database yang bersifat relational. Artinya data-data yang
dikelola dalam database akan diletakkan pada beberapa tabel yang terpisah sehingga manipulasi
data akan menjadi jauh lebih cepat. MySQL dapat digunakan untuk mengelola database mulai dari
yang kecil sampai dengan yang sangat besar.
MySQL juga dapat menjalankan perintah-perintah Structured Query Language (SQL) untuk
mengelola database-database yang ada di dalamnya. Hingga kini, MySQL sudah berkembang hingga
versi 7. MySQL 7 sudah mendukung trigger untuk memudahkan pengelolaan tabel dalam database.
PhpMyAdmin= Pengelolaan database dengan MYSQL harus dilakukan dengan mengetikkan barisbaris perintah yang sesuai (command line) untuk setiap maksud tertentu. Jika anda ingin membuat
database, ketikkan baris perintah yang sesuai untuk membuat database. Jika kita ingin menghapus
tabel, ketikkan baris perintah yang sesuai untuk menghapus tabel. Hal tersebut tentu cukup
menyulitkan karena kita harus hafal dan mengetikkan perintahnya satu persatu.
Banyak sekali perangkat lunak yang dapat dimanfaatkan untuk mengelola data base dalam MySQL,
salah satunya adalah phpMyAdmin. Dengan phpMyAdmin kita dapat membuat tabel, mengisi data
dan lain-lain dengan mudah tanpa harus hafal perintahnya.
Untuk mengaktifkan phpMyAdmin langkah-langkahnya adalah : yang pertama setelah XAMP kita
terinstall, kita harus mengaktifkan web server Apache dan MySQL dari control panel XAMPP.
Yang kedua, jalankan browser kesayangan Anda (IE, Mozilla Firefox atau Opera) lalu ketikkan alamat
web berikut: http://localhost/phpmyadmin/ pada address bar lalu tekan Enter.
Langkah ketiga apabila telah nampak interface (tampilan antar muka) phpMyAdmin anda bisa
memulainya dengan mengetikkan nama database, nama tabel dan seterusnya.
Perl= adalah bahasa pemrograman untuk segala keperluan, dikembangkan pertama kali oleh Larry
Wall di mesin Unix. Perl dirilis pertama kali pada tanggal 18 Desember 1987 ditandai dengan
keluarnya Perl 1.
Umbara
Page 4
Pada versi-versi selanjutnya, Perl tersedia pula untuk berbagai sistem operasi varian Unix (SunOS,
Linux, BSD, HP-UX), juga tersedia untuk sistem operasi seperti DOS, Windows, PowerPC, BeOS, VMS,
EBCDIC, dan PocketPC. Dukungan terhadap pemrograman berbasis obyek (object oriented
programming/OOP) ditambahkan pada Perl 5, yang pertama kali dirilis pada tanggal 31 Juli 1993.
Proyek pengembangan Perl 6 dimulai pada tahun 2000, dan masih berlangsung hingga kini tanpa
tanggal yang jelas kapan mau dirilis. Ini dikatakan sendiri oleh Larry Wall dalam satu pidatonya yang
dikenal dengan seri The State of the Onion. Dua di antara karakteristik utama Perl adalah
penanganan teks dan berbagai jalan pintas untuk menyelesaiakn persoalan-persoalan umum.
Perl sangat populer digunakan dalam program-program CGI (Common Gateway Interface) dan
berbagai protokol Internet lainnya. Seperti diketahui, TCP/IP sebagai basis bagi semua protokol
Internet yang dikenal sekarang ini menggunakan format teks dalam komunikasi data. Seperti juga
bahasa populer lainnya, Perl menerima banyak kritikan.
Meski banyak di antaranya hanya berupa mitos, atau berlebih-lebihan, tapi terdapat juga sejumlah
kritikan yang valid. Salah satunya adalah, sintaksnya susah dibaca, karena banyak menggunakan
simbol-simbol yang bukan huruf dan angka.
XAMPP tersedia untuk Linux, Windows, Mac OS X maupun Solaris sehingga sangat memudahkan
membuat web server multiplatform. Selain itu XAMMP adalah 100% open source, tersedia bebas
dan legal. Dibawah ini link download XAMPP versi terbaru:
XAMPP For Linux
XAMPP For Windows
XAMPP For Mac Os X
XAMPP For Solaris
Page 5
Error stripe : fitur yang menandai baris yang error dengan meng-higlight merah.
Bookmarking : fitur yang digunakan untuk menandai baris yang suatu saat hendak kita
modifikasi
go to commands : fitur yang digunakan untuk jump ke deklarasi variable, source code atau file
yang ada pada project yang sama
Buatlah sebuah database sesuai keinginan kita misalnya kita beri nama 'belajar_php' (tanpa tanda
petik). Setelah itu, kita buat table baru yang kita beri nama biodata' misalnya. contoh SQLnya
seperti berikut ini:
CREATE TABLE IF NOT EXISTS `biodata` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nama` varchar(50) NOT NULL,
`jenis_kelamin`
NULL,
enum('Laki-Laki','Perempuan')
NOT
Umbara
Page 6
Menggunakan Netbeans
Netbeans sebenarnya adalah IDE untuk Java, tapi Netbeans juga bisa untuk membuat aplikasi C/C++,
Ruby, Rails dan juga PHP.
Untuk langkah pertama buka Netbeans, lalu klik File -> New Project -> PHP -> PHP Application
Lalu klik Next dan beri nama project sesuai keinginan kita, nanti nya nama project ini akan di akses
sebagai URL dengan alamat localhost/nama_project.
Umbara
Page 7
Untuk langkah awal project PHP kita sudah jadi, saatnya kita design form.
Umbara
Page 8
Form yang akan kita buat adalah form untuk menampilkan data yang ada di database dalam bentuk
table dan kolom, untuk membuatnya kita rubah file index.php yang sudah ada sebelumnya, file
index.php" itu digenerate otomatis oleh Netbeans. File ini yang nantinya akan tampil pertama
dalam halaman browser.
Ketikan source code berikut di file index.php.
<?php
include 'connect.php';
?>
<style>
tbody > tr:nth-child > td, tbody > tr:nth-child > th {
background-color: #ededed;
}
table{
width: 70%;
margin: auto;
border-collapse: collapse;
box-shadow: darkgrey 3px;
}
thead tr {
background-color: #36c2ff;
}
</style>
<h1 align="center">Tabel Biodata</h1>
<center><a href="input.php">Input Biodata </a></center>
<table border="1">
<thead>
<tr>
<th>No</th>
<th>Nama</th>
<th>Jenis Kelamin</th>
<th>Alamat</th>
<th>No Hp</th>
<th>Pilihan</th>
</tr>
</thead>
<tbody>
<?php
$sql = "SELECT * FROM biodata ORDER BY id";
$no = 1;
foreach ($dbh->query($sql) as $data) :
?>
<tr>
<td><?php echo $no++; ?></td>
<td><?php echo $data['nama'] ?></td>
<td><?php echo $data['jenis_kelamin'] ?></td>
Umbara
Page 9
?>"
onclick="return
Setelah kita selesai membuat form nya, kita save (CTRL +S).
Sekarang form tampil kita telah selesai, sekarang lanjut untuk membuat form input.
ii.
Umbara
Page 10
Beri nama input, lalu klik finish. Setelah selesai kita rubah file input.php seperti berikut
Page 11
</form>
</fieldset>
<center><a href="index.php"> << Tabel Biodata</a></center>
Setelah selesai kita save file input.php, Sekarang kita lanjutkan membuat form edit.
iii.
Umbara
Page 12
Setelah selesai, lalu save. Sekarang pembuatan semua form untuk aplikasi kita telah selesai, langkah
selanjutnya adalah membuat aksi dari masing-masing form, lets coding !
V. Coding
i.
Umbara
Page 13
Beri nama connect lalu klik finish. Setelah selesai, rubah file connect.php seperti berikut
<?php
$dsn = "mysql:dbname=belajar_php;host=localhost";
$user = "root"; //Sesuaikan dengan nama user database
$pass = "raa.nyze"; //Sesuaikan dengan nama password database
try {
$dbh = new PDO($dsn, $user, $pass);
} catch (PDOException $e) {
echo "Koneksi ke database gagal: ".$e->getMessage();
}
?>
Setelah selesai kita save. Selanjutnya kita buat file simpan.php.
ii.
Sekarang mari kita buat file simpan.php, langkahnya seperti membuat file connect.php, lalu beri
nama simpan, rubah source codenya seperti berikut
Umbara
Page 14
<?php
include 'connect.php';
if (isset($_POST)) {
$sql = "INSERT INTO biodata
'$_POST[alamat]', '$_POST[no_hp]')";
$dbh->exec($sql);
}
VALUE
('',
'$_POST[nama]',
'$_POST[jenis_kelamin]',
header("location:index.php");
?>
Setelah selesai kita save file simpan.php, dan lanjutkan untuk membuat file update.php.
iii.
Sekarang mari kita buat file simpan.php, langkahnya seperti membuat file connect.php, lalu beri
nama update, rubah source codenya seperti berikut
<?php
include 'connect.php';
if (isset($_POST)) {
$sql = "UPDATE biodata SET nama = '$_POST[nama]',
jenis_kelamin = '$_POST[jenis_kelamin]',
alamat = '$_POST[alamat]',
no_hp = '$_POST[no_hp]'
WHERE id = '$_POST[id]' ";
$dbh->exec($sql);
}
header("location:index.php");
?>
Setelah selesai kita save file simpan.php, dan lanjutkan untuk membuat file hapus.php.
iv.
Umbara
Page 15
Bagian terakhir adalah membuat file yang bertugas untuk menghapus data yang kita pilih untuk
dihapus, code programnya seperti berikut ini:
<?php
include 'connect.php';
if (isset($_GET['id'])) {
$dbh->exec("DELETE FROM biodata WHERE id = '$_GET[id]'");
}
header("location:index.php")
?>
kita simpan file tersebut dengan nama 'hapus.php'.
Umbara
Page 16
Tampilan form input sekaligus validasi jika ada data yang tidak di isi
Sekarang program sederhana kita telah selesai, di Bab selanjutnya saya akan menerangkan fungsi
fungsi dari source code PHP yang telah kita buat.
Umbara
Page 17
Sering kali programmer bahasa pemrograman PHP menggunakan fungsi mysql_connect() untuk
koneksi ke basis data MySQL, atau oci_connect() untuk koneksi ke basis data Oracle. Namun,
bagaimana jika sebuah server menggunakan beberapa basis data sekaligus? dan apakah fungsi
seperti di atas tersebut aman? Banyak sekali profesional programmer PHP (bahkan
pengembangnya) menyarankan untuk tidak lagi menggunakan fungsi tersebut, dan beralih ke PHP
5.1, atau ke atas (jika Anda masih menggunakan versi PHP 5 atau lebih lama. Karena pada versi PHP
5 ke atas inilah, fungsi PDO dimasukkan.
Bagaimana dengan penggunaan mysqli? Beberapa waktu lalu, sebelum PDO benar-benar umum,
programmer dapat mengubah fungsi mysql_....(fetch_array,connect,select_db, dll) menjadi
mysqli_...
Kini tugas tersebut dapat digantikan dengan PDO, PHP Data Objects. Fitur utama PDO ini adalah
pencegahan SQL Injection, dan dukungan lebih dari satu jenis basis data pada penggunaan PDO.
ii.
iii.
iv.
Menggunakan Kueri
Variabel $DBH sudah menjadi object PDO baru, dan ketika kita ingin menggunakannya pada salah
satu baris yang mencari atau mengambil data, bentuk seperti yang telah kita pakai di form form
Umbara
Page 18
sebelumnya yang telah kita buat, contohnya di form index.php, form ini berfungsi untuk
menampilkan data dari database, implementasi PDO berikut ini saya gabungkan dengan perintah
foreach , berikut source code nya :
syntax2:
<?php
$sql = "SELECT * FROM biodata ORDER BY id";
$no = 1;
foreach ($dbh->query($sql) as $data) :
?>
<tr>
<td><?php echo $no++; ?></td>
<td><?php echo $data['nama'] ?></td>
<td><?php echo $data['jenis_kelamin'] ?></td>
<td><?php echo $data['alamat'] ?></td>
<td><?php echo $data['no_hp'] ?></td>
<td align="center">
<a href="edit.php?id=<?php echo $data['id'] ?>">edit</a>
<a href="hapus.php?id=<?php echo $data['id'] ?>" onclick="return confirm('Anda yakin
akan menghapus data?')">hapus</a>
</td>
</tr>
<?php
endforeach;
?>
Dengan kata lain, kita hanya perlu menjalankan syntax1 sekali saja setiap arsip .php menggunakan
basis data dengan koneksi tersebut. dan menggunakan syntax2 pada setiap saat kita menggunakan
kueri.
$sql merupakan isi dari kueri yang kita buat, dalam contoh di atas, saya mengambil seluruh data dari
tabel bernama biodata.
v.
Mengambil Data
Contoh diatas saya menggunakan fungsi foreach Saat mengambil data yang memiliki
susunan/larik(array), kita juga bisa membuat variabel baru, sehingga mudah digunakan seperti
contoh berikut :
syntax3:
Umbara
Page 19
Dalam syntax3, terlihat jelas bahwa setiap variabel yang melakukan Prepared Statement atau saat di
samakan dengan $DBH menggunakan fungsi prepare, memiliki kueri dan hasil/keluarannya masingmasing.
Jika Anda ingin mengambil data dari luar untuk dimasukkan ke dalam kueri, gunakan array pada
fungsi eksekusi.
Contoh :
syntax4:
$kueri = "SELECT * FROM tabel WHERE nama = ? AND no = ?";
$STH = $DBH->prepare($kueri);
$STH->execute(array($postNama, '1'));
syntax5:
$data = $STH->fetch();
//ATAU
while($data = $STH->fetch()){
//Pengulangan, contoh:
echo $data['judul_artikel'];
}
Kita tinggal meletakkan hasil dari $data['nama_kolom'] pada tempat yang dibutuhkan.
Untuk susunan lebih lanjut, kita dapat mengatur menggunakan fungsi setFetchMode(), contoh :
syntax6:
//Letakkan baris kode ini sebelum mengambil hasil dari fetch, atau sebelum syntax5
$STH->setFetchMode(PDO::FETCH_ASSOC);
Dengan begitu Anda dapat mengatur susunan data dengan lebih mudah lagi
vi.
Umbara
Page 20
PDO yang telah kita bahas menggunakan prepared statement, disinilah kueri yang kita taruh
sebelumnya akan disaring dan akan ditolak seketika jika terjadi kesalahan.
Hal inilah yang membuat PDO sangat aman dan direkomendasikan.
VIII.
Kesimpulan
Secara umum workflow untuk mendesain suatu halaman web menggunakan IDE NetBeans berbasis PHP
dan menggunakan database MySQL (include XAMPP) terdiri dari langkah-langkah berikut :
1.
2.
3.
4.
5.
6.
7.
IX.
Tentang Penulis
mr.radhite@gmail.com
Page 21