Koneksi PHP ke MySQL
Bahasa pemrograman PHP sangat populer, terutama untuk
bahasa pemrograman Web. Yang harus dipersiapkan untuk belajar pemrograman PHP
MySQL ini:
1. Program PHP
2. Web Server Apache
3. Database MySQL
4. Editor (Ex: Macromedia Dreamweaver, EditPlus, dll)
5. MySQL Editor (Ex :phpmyAdmin, MySQL Front, dll)
1. Program PHP
2. Web Server Apache
3. Database MySQL
4. Editor (Ex: Macromedia Dreamweaver, EditPlus, dll)
5. MySQL Editor (Ex :phpmyAdmin, MySQL Front, dll)
Untuk program PHP – Apache – MySQL – phpMyadmin,
banyak distribusi program yang sudah dipaket yang berisi ke 3 program diatas.
Artinya dengan satu kali install, maka kita secara otomatis akan tersinstall ke
3 program diatas, misalnya PHPTriad, AppServ, Vertrigo, Xampp, Wamp dan banyak
lagi yang lainnya.
Saya akan menjelaskan dari awal, mulai dari Instalasi
sampai dengan bagaimana menampilkan data MySQL di Browser.
Instalasi
Silahkan download distribusi paket PHP – Apache –
MySQL – phpMyadmin. Saya menggunakan distribusi Vertrigo 2.10 yang tersedia di
web http://sourceforge.org dengan spesifikasi sebagai berikut :
- Apache 2.0.59
- PHP 5.1.4
- MySQL 5.0.24
- PhpMyAdmin 2.8.2.1
Untuk editornya, saya menggunakan Macromedia Dreamweaver MX 2004, dan kadang-kadang menggunakan EditPlus biar cepat.
- Apache 2.0.59
- PHP 5.1.4
- MySQL 5.0.24
- PhpMyAdmin 2.8.2.1
Untuk editornya, saya menggunakan Macromedia Dreamweaver MX 2004, dan kadang-kadang menggunakan EditPlus biar cepat.
Membuat Database dan Tabel
Sebelum membuat database tabel di MySQL, pastikan
bahwa semua Service berjalan (Apache). Saya biasanya menggunakan phpMyadmin
untuk membuat database, membuat tabel, mengisi tabel dan sebagainya (klo ada yg
mudah, kenapa susah-susah). Buat database, misalnya databse dengan nama
project. Untuk mengakses phpMyadmin ketik http://localhost/phpmyadmin di
browser.
CREATE DATABASE
project;
Kemudian
buat satu tabel dengan nama tabel users
CREATE TABLE
users (
username VARCHAR(32) NOT NULL,
password VARCHAR(32) NOT NULL,
full_name VARCHAR(50) NOT NULL,
PRIMARY KEY (username)
)
username VARCHAR(32) NOT NULL,
password VARCHAR(32) NOT NULL,
full_name VARCHAR(50) NOT NULL,
PRIMARY KEY (username)
)
Masukkan
minimal dua record (data) ke tabel users
INSERT INTO
users (username, password, full_name) VALUES
(‘supono’, ‘m45ter’, ‘Supono Thea’),
(‘ayu’, ‘m4h4d3w1′, ‘Siti Rahayu’);
(‘supono’, ‘m45ter’, ‘Supono Thea’),
(‘ayu’, ‘m4h4d3w1′, ‘Siti Rahayu’);
Dukungan PHP
Memiliki banyak library yang memungkinkan untuk akses database.
Kecepatan akses dengan menggunakan engine/driver yang khusus untuk setiap
database.
Independent terhadap database yang digunakan.
PHP mendukung ODBC.
Prosedur Standar
- Connect to Server
- Open Database
- EksekusiSQL
- ProsesRecord Set
- Close Database
Template Akses Database
Membuat koneksi dengan database
$conn=
mysql_connect($host, $user, $pass);
mysql_connect (namaserver,
username ,password) perintah ini digunakan untuk melakukan koneksi ke database
server. Fungsi ini menghasilkan suatu pengenal link (link identifier) yang
digunakan untuk perintah berikutnya.
Membuka database
$select =
Mysql_select_db($nama_db);
Mysql_select_db printah
ini digunakan untuk memilih database apa yang akan diproses.
Melakukan Query
$result =
Mysql_query(“SELECT EmployeeID from Sales”);
Mysql_query perintah ini digunakan untuk
mengeksekusi perintah SQL yang ada di parameter query.fungsi ini akan
menghasilkan suatu petunjuk kehasil eksekusi (result).
Mengambil Hasil Query à masukkan ke
dalam Array
$row =
Mysql_fetch_array($result);
Mysql_fetch_array (link result) berfungsi untuk mengambil
satu baris data atau satu kolom data dari proses eksekusi query, perintah ini
menghasilkan array yang dimulai dengan index 0.
Mencetak isi Field
echo $row[“namafield”];
echo $row merupakan perintah yang digunakan untuk
menampilkan berapa data yang dihasilkan dari eksekusi query(result).
Contoh mengkoneksikan
PHP ke MySQL
a) Buka editor pavorit Anda, langsung
aja ketik script di bawah ini :
<?php
/**
* Koneksi PHP ke MySQL
* date: Agustus 2007
* tujuan: Tutorial aja
* @author credit to Supono <pono_thea@yahoo.com>
*/
/**
* Koneksi PHP ke MySQL
* date: Agustus 2007
* tujuan: Tutorial aja
* @author credit to Supono <pono_thea@yahoo.com>
*/
/*
* koneksi ke MySQL
* script : mysql_connect(“host”, “username”, “password”);
*/
$conn = mysql_connect(“localhost”, “root”, “vertrigo”);
if ($conn){ // => sama dengan if ($conn == true)
echo “Koneksi ke Server sukses<br />”;
} else {
echo “Koneksi ke Server Gagal<br />”;
exit; // => program tidak akan mengeksekusi code berikutnya (keluar)
}
* koneksi ke MySQL
* script : mysql_connect(“host”, “username”, “password”);
*/
$conn = mysql_connect(“localhost”, “root”, “vertrigo”);
if ($conn){ // => sama dengan if ($conn == true)
echo “Koneksi ke Server sukses<br />”;
} else {
echo “Koneksi ke Server Gagal<br />”;
exit; // => program tidak akan mengeksekusi code berikutnya (keluar)
}
/*
* memilih database
* script : mysql_select_db(“nama_database”);
*/
$select_db = mysql_select_db(“project”);
if ($select_db){
echo “Memilih database sukses<br />”;
} else {
echo “Memilih database Gagal<br />”;
exit;
}
* memilih database
* script : mysql_select_db(“nama_database”);
*/
$select_db = mysql_select_db(“project”);
if ($select_db){
echo “Memilih database sukses<br />”;
} else {
echo “Memilih database Gagal<br />”;
exit;
}
/*
* menampilkan data
* script query ke database : mysql_query(“SQL statement”);
* script ambil data : mysql_fetch_array(“Hasil Query”);
*/
$sql = “SELECT * FROM users”; // Perintah SQL untuk menampilkan data seluruhnya
$res = mysql_query($sql); // Perintah Query ke database
while ($row = mysql_fetch_array($res)){ // Looping selama data ada
echo “Nama : $row[full_name]<br />”; // Menampilkan data di kolom (field) full_name
}
?>
* menampilkan data
* script query ke database : mysql_query(“SQL statement”);
* script ambil data : mysql_fetch_array(“Hasil Query”);
*/
$sql = “SELECT * FROM users”; // Perintah SQL untuk menampilkan data seluruhnya
$res = mysql_query($sql); // Perintah Query ke database
while ($row = mysql_fetch_array($res)){ // Looping selama data ada
echo “Nama : $row[full_name]<br />”; // Menampilkan data di kolom (field) full_name
}
?>
Ternyata mudah yah, tapi dulu ga semudah yang saya
bayangkan, berapa kali try and error, memang penuh perjuangan dan sedikit
kesabaran. Ada beberapa error yang mungkin muncul, diantaranya :
Error:
Error:
Warning: mysql_connect() [function.mysql-connect]:
Access denied for user ‘root’@'localhost’ (using password: YES) in
G:\Web\VertrigoServ\www\exercise\blog\index.php on line 13
Solusinya:
Tenang, jangan panik, cek baris 13. Biasanya ada kesalahan setting pada script ini mysql_connect(“host”, “username”, “password”) host = localhost, username = root dan password = password_anda, jika password kosong cukup tulis mysql_connect(“host”, “username”, “”).
Tenang, jangan panik, cek baris 13. Biasanya ada kesalahan setting pada script ini mysql_connect(“host”, “username”, “password”) host = localhost, username = root dan password = password_anda, jika password kosong cukup tulis mysql_connect(“host”, “username”, “”).
Error:
Parse error: parse error, unexpected ‘=’ in
G:\Web\VertrigoServ\www\exercise\blog\index.php on line 25
Solusi:
Kalau error seperti itu, biasanya kesalahan penulisan script, misalnya kurang $ ($conn => conn), yang lain, cari aja sendiri.
Kalau error seperti itu, biasanya kesalahan penulisan script, misalnya kurang $ ($conn => conn), yang lain, cari aja sendiri.
b) Sebelum kita
melaui ketahap koneksi, pembaca harus menyiapkan satu database dulu. Setelah
database dan table sudah jadi, sekarang kita tinggal melakukan koneksinya.
Nah sekarang buka aplikasi tempat dimana kita akan meletakkan script php nantinya. Setelah itu pembaca tinggal mengcopy script berikut :
<?
$link=mysql_connect(" localhost" ," root" ," " );
$db=mysql_select_db(" sosa" ,$link);
$query=" select * from jual_voucher order by no" ;
$hasil=mysql_query($query,$link);
$banyak=mysql_num_rows($hasil);
if ($banyak>0)
{
echo
" <p align=center> data yang ada dalam tabel sebanyak $banyak record <center>" ;
echo" <table border=1 cellpading=2 p align=center >
<tr bgcolor=silver>
<td align=center>kode barang</td>
<td align=center>Nama Barang</td>
<td align=center>Tanggal Masuk</td>
<td align=center>Harga</td>
<td align=center>stok</td>
</tr>" ;
while($data=mysql_fetch_row($hasil))
{
echo" <tr>
<td align=center>$data[0]</td>
<td align=center>$data[1]</td>
<td align=center>$data[2]</td>
<td align=center>$data[3])</td>
<td align=center>$data[4]</td>
</tr>" ;
}
echo " </table>" ;
}
else
echo" Tidak ada data dalam tabel" ;
mysql_close($link);
?>
Untuk lebih paham tentang script diatas, berikut keterangannya
a. mysql_connect (namaserver,username,password) printah ini digunakan untuk melakukan koneksi ke database server.Fungsi ini menghasilkan suatu pengenal link (link identifier) yang digunakan untuk perintah berikutnya.
b. Mysql_select_db printah ini digunakan untuk memilih database apa yang akan diproses.
c. Mysql_query perintah ini digunakan untuk mengeksekusi perintah SQL yang ada di parameter query.fungsi ini akan menghasilkan suatu petunjuk kehasil eksekusi (result)
d. Mysql_num_rows(link result) perintah ini digunakan untuk menampilkan berapa data yang akan dihasilkan dari eksekusi query(result)
e. Mysql_fetch_row(link result) berfungsi untuk mengambil satu baris data dari proses eksekusi query, perintah ini menghasilkan array yang dimulai dengan index 0.
f. Mysql_close (link identifier) berfungsi untuk menutup koneksi sesuai dengan link identifiernya..
Nah sekarang buka aplikasi tempat dimana kita akan meletakkan script php nantinya. Setelah itu pembaca tinggal mengcopy script berikut :
<?
$link=mysql_connect(" localhost" ," root" ," " );
$db=mysql_select_db(" sosa" ,$link);
$query=" select * from jual_voucher order by no" ;
$hasil=mysql_query($query,$link);
$banyak=mysql_num_rows($hasil);
if ($banyak>0)
{
echo
" <p align=center> data yang ada dalam tabel sebanyak $banyak record <center>" ;
echo" <table border=1 cellpading=2 p align=center >
<tr bgcolor=silver>
<td align=center>kode barang</td>
<td align=center>Nama Barang</td>
<td align=center>Tanggal Masuk</td>
<td align=center>Harga</td>
<td align=center>stok</td>
</tr>" ;
while($data=mysql_fetch_row($hasil))
{
echo" <tr>
<td align=center>$data[0]</td>
<td align=center>$data[1]</td>
<td align=center>$data[2]</td>
<td align=center>$data[3])</td>
<td align=center>$data[4]</td>
</tr>" ;
}
echo " </table>" ;
}
else
echo" Tidak ada data dalam tabel" ;
mysql_close($link);
?>
Untuk lebih paham tentang script diatas, berikut keterangannya
a. mysql_connect (namaserver,username,password) printah ini digunakan untuk melakukan koneksi ke database server.Fungsi ini menghasilkan suatu pengenal link (link identifier) yang digunakan untuk perintah berikutnya.
b. Mysql_select_db printah ini digunakan untuk memilih database apa yang akan diproses.
c. Mysql_query perintah ini digunakan untuk mengeksekusi perintah SQL yang ada di parameter query.fungsi ini akan menghasilkan suatu petunjuk kehasil eksekusi (result)
d. Mysql_num_rows(link result) perintah ini digunakan untuk menampilkan berapa data yang akan dihasilkan dari eksekusi query(result)
e. Mysql_fetch_row(link result) berfungsi untuk mengambil satu baris data dari proses eksekusi query, perintah ini menghasilkan array yang dimulai dengan index 0.
f. Mysql_close (link identifier) berfungsi untuk menutup koneksi sesuai dengan link identifiernya..
c) Secara umum langkah
perintah-perintahnya adalah sebagai berikut (diasumsikan Web server ada di
alamat 192.168.1.2, menggunakan server database dengan alamat 192.168.1.1, user
coba, password cobapsw, database prothelon, table tabel1) :
Contoh
pada gambar berikut :
Tidak ada komentar:
Posting Komentar