Anda di halaman 1dari 18

Pemrograman Web/T/ AK 045216/2 sks

Basis Data Web


Server Basis Data dan nstalasi
Koneksi ke Basis Data
MySQL
Konsep Basis Data di Web
Pertemuan ke 10
Pemrograman Web/T/ AK 045216/2 sks
Basis Data Web
Basis Data (Database) di aplikasi Web sama seperti pada pemakaian
basis data tersebut di aplikasi desktop.
Basis data yang banyak dipakai di aplikasi web adalah model
client/server.
Pemrograman Web/T/ AK 045216/2 sks
Server Basis Data
Server Basis Data (Database) yang didukung oIeh PHP antara Iain :
Informix
DB2
MySQL
OracIe
PostgreSQL
Sybase
Untuk proses instaIasinya, sama seperti instaIasi basis data tsb pada
apIikasi desktop.
Pada umumnya sudah ada fiIe instaIasinya, seperti setup.exe, yang
kemudian diikuti beberapa pertanyaan.
Pemrograman Web/T/ AK 045216/2 sks
Basis Data Web
Diagram Posisi Basis Data Web
MySQL
(Database)
Web Browser
Web Server
nterpreter
PHP
File PHP
Page yg diinginkan
Web dinamis Manipulasi
data
Pemrograman Web/T/ AK 045216/2 sks
MySQL
MySQL adaIah database yang sangat popuIar digunakan bersama
PHP. PHP dengan MySQL adaIah kombinasi yang baik untuk
menampiIkan kekuatan sesungguhnya dari Server-Side
scripting.
Dengan MySQL, pengguna dapat membuat table, dimana data dapat
disimpan lebih efisien dibandingkan menyimpan data dalam array.
Untuk menggunakan MySQL ataupun database lain secara efektif,
diperlukan pemahaman Structured Query Language (SQL).
Pemrograman Web/T/ AK 045216/2 sks
MySQL
Langkah-Iangkah Penggunaannya :
a. Koneksi ke Server MySQL
PHP mempunyai fungsi mysqI_connect untuk koneksi ke server
MySQL.
DiperIukan 3 argumen;
Pertama : nama dari server MySQL,
Kedua : nama pengguna (username) MySQL dan
Ketiga : sebuah password MySQL.
Pada contoh ini, diasumsikan nama servernya adaIah IocaIhost.
Pemrograman Web/T/ AK 045216/2 sks
MySQL
ika menjaIankan eb server pada satu system dan MySQL pada
system Iain, gantiIah IocaIhost dengan IP address dari sistem
yang ada MySQL.
mysqI_connect mengembaIikan sebuah link_identifier yang dapat
digunakan untuk komunikasi dengan database.
Iink ini disimpan daIam sebuah variabIe yang disebut $link.
<?php $Iink = mysqI_connect ("IocaIhost", "nama pengguna",
"password"); ?>
Pemrograman Web/T/ AK 045216/2 sks
MySQL
b. MemiIih sebuah Database
SeIanjutnya adaIah memiIih database yang akan dipakai. PHP
mempunyai fungsi mysqI_seIect_db yang dipergunakan untuk
memiIih database yang akan dipakai.
Argumen pertama adaIah nama database (wajib ada). Argumen
kedua disebut dengan link_identifier, yang bersifat optional dan
dihasiIkan dari perintah mysqI_connect.
ika tidak dinyatakan, PHP akan menggunakan Iink terakhir yang
dibuka oIeh mysqI_connect.
<?php mysqI_seIect_db ("nama_database", $Iink); ?>
Pemrograman Web/T/ AK 045216/2 sks
MySQL
c. MenjaIankan sebuah Query
Sekarang sudah siap untuk menjaIankan sebuah SQL query ke
database tersebut untuk memiIih informasi (seIect), meIakukan
penambahan data (insert), mengubah (update) atau menghapus
(deIete).
Gunakan mysqI_query.
DiperIukan 2 argumen: pertama: sebuah SQL query string (yang
wajib ada) dan kedua adaIah link_identifier (opsionaI).
Seperti mysqI_seIect_db, jika link_identifier tidak disebutkan,
maka akan digunakan link terbuka terakhir.
Pemrograman Web/T/ AK 045216/2 sks
MySQL
mysqI_query akan menghasiIkan sebuah resource atau niIai faIse
jika query nya gagaI, pada penggunaan statement seIect.
Sedangkan pada penggunaan deIete, insert atau update, akan
dihasiIkan niIai true (jika query nya sukses) atau faIse (jika
query nya gagaI)
Untuk menjaIankan sebuah query digunakan fungsi PHP
mysqI_query(query, [database]), dimana query adaIah query
MySQL sedangkan database (bersifat opsionaI) adaIah sebuah
koneksi database, yang niIai defauItnya adaIah koneksi terbuka
terakhir (disini, koneksi tersebut diwakiIi $Iink). Contoh, untuk
meIakukan query "SELECT * FROM mahasiswa ORDER BY npm
ASC", :
<?php mysqI_query("SELECT * FROM mahasiswa ORDER BY
npmASC"); ?>
Pemrograman Web/T/ AK 045216/2 sks
MySQL
Metode Iangsung ini kurang fIeksibeI. Pada umumnya digunakan
metode 2 Iangkah, yakni memakai variabIe untuk statement
query nya (missaI $query" atau $sql_query), kemudian
penuIisan programnya menjadi mysqI_query($sqI_query).
$sqI_query = "SELECT * FROM mahasiswa ORDER BY npm ASC";
Yang kedua, digunakan variabIe untuk menampung hasiI query.
Contoh :.
$resuIt = mysqI_query ($sqI_query, $Iink);
Pemrograman Web/T/ AK 045216/2 sks
MySQL
Untuk menangkap kesaIahan, yakni untuk keperIuan debug, dapat
dituIis sebagai berikut:
<?php $resuIt = mysqI_query ($sqI_query, $Iink) or die
(mysqI_error () . " Query nya adaIah :" . $sqI_query); ?> ika
fungsi mysqI_query menghasiIakn false, PHP akan
menghentikan script tersebut dan mencetak sebuah pesan
error dari MySQL (seperti "you have an error in your SQL
syntax") and the query.
Pemrograman Web/T/ AK 045216/2 sks
MySQL
adi akhirnya penuIisan kode untuk menjaIankan querynya
menjadi (diasumsikan koneksi databasenya adaIah $Iink):
<?php $sqI_query = "SELECT * FROM mahasiswa ORDER BY
npm ASC"; $resuIt = mysqI_query ($sqI_query, $Iink) or die
(mysqI_error () . " Query nya adaIah :" . $sqI_query); ?>
Pemrograman Web/T/ AK 045216/2 sks
MySQL
Menggunakan semuanya secara bersamaan
DaIam bagian terdahuIu, terdapat 3 perintah yang beIum
digabungkan. Sekarang perintah2 tersebut akan digabungkan,
dimana tabIe yang akan digunakan adaIah tabIe Mahasiswa,
yang disimpan daIam database Gunadarma.
Pemrograman Web/T/ AK 045216/2 sks
MySQL
<?php
//Koneksi ke server mysqI dan mendapatkan link identifier nya
$Iink = mysqI_connect ("IocaIhost","nama
pengguna",password");
//Sekarang memiIih database yang digunakan
mysqI_seIect_db ("Gunadarma", $Iink);
//Query nya
$sqI_query = "SeIect * From Mahasiswa";
//MenjaIankan query
$resuIt = mysqI_query ($sqI_query, $Iink);
//Menutup Koneksi Database
mysqI_cIose ($Iink); ?>
Pemrograman Web/T/ AK 045216/2 sks
MySQL
Mendapatkan informasi SeIect Query
Query seIect berarti memiIih informasi dari sebuah database yang
dikenaI sebagai resource, yang ditampung daIam variabIe
$result, sebagai resource identifier.
Gunakan fungsi mysqI_fetch_array untuk menampiIkan informasi.
DiperIukan satu parameter, yakni resource identifier (misaInya :
$result), dan dihasiIkan sebuah array. Berikut adaIah contoh
program untuk menampiIkan informasi dari database :
Pemrograman Web/T/ AK 045216/2 sks
MySQL
<?php
//Koneksi ke server mysqI server dan mendapatkan link identifier
nya
$Iink = mysqI_connect("IocaIhost", "nama pengguna",
"password") or die('Koneksi GagaI: ' . mysqI_error());
// Sekarang memiIih database yang digunakan
mysqI_seIect_db("Gunadarma") or die('GagaI memiIih database');
// Query nya
$sqI_query = "SeIect * From Mahasiswa";
// MenjaIankan query
$resuIt = mysqI_query($sqI_query)or die('query gagaI'.
mysqI_error());
Pemrograman Web/T/ AK 045216/2 sks
MySQL
//iterasi through resuIt
whiIe($row= mysqI_fetch_array($resuIt))
{
//MenampiIkan informasi dari baris tersebut
print_r($row);
echo $row['foo'];
//MenampiIkan hanya koIom foo.
}
// Mengosongkan resuItset (opsionaI)
mysqI_free_resuIt($resuIt);
// Menutup Koneksi Database
mysqI_cIose($Iink);
?>

Anda mungkin juga menyukai