bd1 12 [aplikasi basisdata - berbasis web] filecara kerja aplikasi berbasis web aplikasi basisdata...
TRANSCRIPT
Basis Data I
Pertemuan Ke-12
(Aplikasi Basisdata – berbasis web)
Noor Ifada
1
Noor Ifada
111
Sub Pokok Bahasan
Cara Kerja: Aplikasi berbasis Web dan Aplikasi Basisdata berbasis Web (PHP – MySQL)berbasis Web (PHP – MySQL)
Beberapa Fungsi dalam PHP untuk mengakses BasisData MySQL
Contoh Aplikasi Basisdata berbasis Web: Membuat Counter
2222
Cara KerjaAplikasi berbasis Web
Aplikasi Basisdata berbasis Web (PHP-MySQL)
333
Web Browser (Firefox, Chrome, Opera, dll)
RDBMS (MySQL)Web Server (Apache, Server-side Programming: PHP)
mysql_connect()
mysql_select_db()
Beberapa Fungsi dalam PHP untuk Akses Basisdata MySQL
mysql_query()
mysql_num_rows()
mysql_fetch_row()
mysql_fetch_assoc()
mysql_fetch_array()
mysql_close()
4
mysql_close()
� Untuk melakukan koneksi ke server basisdata MySQL
� Akan menghasilkan “link identifier koneksi “ jika koneksi berhasil, dan nilai FALSE jika
gagal
PHP-MySQL: mysql_connect()
gagal
� Sintaks:
mysql_connect(nama_host, nama_user, password);
� Contoh:
<?php$connection = mysql_connect ( "localhost" , "root" , "" );if (! $connection ) {
die( "Cannot connect to server : “ . mysql_error ());}
5
}echo “Connected Successfully” ;
?>
� Untuk memilih atau mengaktifkan basisdata
� Akan menghasilkan nilai true jika basisdata dapat diakses, dan nilai FALSE jika gagal
� Sintaks:
PHP-MySQL: mysql_select_db() (contd-2)
� Sintaks:
mysql_select_db(“nama_database”,link_identifier_koneksi);
� Contoh:
<?php$connection = mysql_connect ( "localhost" , "root" , "" );if (! $connection ) {
die( "Cannot connect to server : “ . mysql_error ());}$db = mysql_select_db ( “db_example" , $connection );if (! $db ) {
6
if (! $db ) {die( “Error : “ . mysql_error ());
}?>
� Untuk menjalankan query yang terdapat di MySQL
� Akan mengembalikan hasil query jika query dapat dieksekusi, dan nilai FALSE jika
gagal
PHP-MySQL: mysql_query() (contd-3)
gagal
� Sintaks:
mysql_select_db(“query”,link_identifier_koneksi);
� Contoh:
<?php$connection = mysql_connect ( "localhost" , "root" , "" );$db = mysql_select_db ( “db_example" , $connection );
$query = mysql_query ( “SELECT * FROM table1" , $connection );
7
$query = mysql_query ( “SELECT * FROM table1" , $connection );if (! $query ) {
die( “Error : “ . mysql_error ());}
?>
� Untuk mengambil banyaknya baris/record yang dihasilkan oleh perintah query
SELECT
� Akan mengembalikan angka yang menunjukkan banyaknya baris/record yang
PHP-MySQL: mysql_num_rows() (contd-4)
� Akan mengembalikan angka yang menunjukkan banyaknya baris/record yang
dihasilkan oleh perintah query SELECT
� Sintaks:
mysql_num_rows(“query SELECT”);
� Contoh:
<?php$connection = mysql_connect ( "localhost" , "root" , "" );$db = mysql_select_db ( “db_example" , $connection);$query = mysql_query ( “SELECT * FROM table1" , $connection );
8
$query = mysql_query ( “SELECT * FROM table1" , $connection );
$num_of_rec = mysql_num_rows ( $query );echo “Number of records = ” . $num_of_rec ;
?>
� Untuk mengambil satu baris data yang dihasilkan oleh perintah SELECT. Data
diberikan dalam bentuk array
� Akan mengembalikan array yang berisi seluruh kolom/field dari satu baris/record
PHP-MySQL: mysql_fetch_row() (contd-5)
� Akan mengembalikan array yang berisi seluruh kolom/field dari satu baris/record
data, dan nilai FALSE jika tidak ada lagi data yang ditunjuk oleh pointer record
� Sintaks: mysql_fetch_row(“query SELECT”);
� Contoh:
<?php$query = mysql_query
( “SELECT column1,column2 FROM table1 WHERE column1=‘1’" , $connection );
if (! $query ) {
9
if (! $query ) {echo “Error : “ . mysql_error ();exit;
}$data = mysql_fetch_rows ( $query );echo $data [ 0];echo $data [ 1];
?>
� Untuk mengambil satu baris data yang dihasilkan oleh perintah SELECT. Data diberikan
dalam bentuk associative array
� Akan mengembalikan associative array yang berisi seluruh kolom/field dari satu
PHP-MySQL: mysql_fetch_assoc() (contd-6)
baris/record data, dan nilai FALSE jika tidak ada lagi data yang ditunjuk oleh pointer
record
� Sintaks: mysql_fetch_assoc(“query SELECT”);
� Contoh:
<?php$query = mysql_query
( “SELECT column1,column2 FROM table1 WHERE column1=‘1’" , $connection );
10
WHERE column1=‘1’" , $connection );if (! $query ) {
echo “Error : “ . mysql_error ();exit;
}$data = mysql_fetch_assoc ( $query );echo $data [ “column1” ];echo $data [ “column2” ];
?>
� Untuk mengambil satu baris data yang dihasilkan oleh perintah SELECT. Data
diberikan dalam bentuk array biasa (sama dengan mysql_fetch_row) atau array
associative (sama dengan mysql_fetch_assoc)
PHP-MySQL: mysql_fetch_array() (contd-7)
associative (sama dengan mysql_fetch_assoc)
� Akan mengembalikan array yang berisi seluruh kolom/field dari satu baris/record
data, dan nilai FALSE jika tidak ada lagi data yang ditunjuk oleh pointer record
� Sintaks: mysql_fetch_array(“query SELECT“,result_type);
(Result_type: MYSQL_NUM | MYSQL_ASSOC)
� Contoh (untuk result_type berbentu MYSQL_NUM):
<?php$connection = mysql_connect ( "localhost" , "root" , "" );
11
$connection = mysql_connect ( "localhost" , "root" , "" );$db = mysql_select_db ( “db_example" , $connection);$query = mysql_query ( “SELECT column1,column2
FROM table1" , $connection );while ( $row = mysql_fetch_array ( $query, MYSQL_NUM )){
echo “Column 1: ".$row[0]. " Column 2: ".$row[1] ;}
?>
� Untuk menutup koneksi ke server basisdata MySQL yang telak dilakukan
� Akan menghasilkan nilai true jika penutupkan koneksi berhasil dilakukan, dan nilai
false jika gagal
PHP-MySQL: mysql_close() (contd-8)
false jika gagal
� Sintaks:
mysql_close(link_identifier_koneksi);
� Contoh:
<?php$connection = mysql_connect ( "localhost" , "root" , "" );if (! $connection ) {
die( "Cannot connect to server : “ . mysql_error ());}
12
}echo “Connected Successfully” ;mysql_close ( $connection );
?>
1. Membuat koneksi ke basisdata
2. Mendeklarasikan suatu variabel string yang berisi sintaks perintah MySQL
yang akan dilakukan
Urutan Operasi Akses MySQL menggunakan PHP
yang akan dilakukan
3. Melaksanakan sintaks MySQL menggunakan fungsi untuk menghasilkan
keluaran yang akan ditampilkan. Hasil ditampung di dalam variabel yang telah
dideklarasikan sebelumnya
4. Mengambil hasil dari sintaks MySQL yang dilaksanakan dengan menggunakan
fungsi mysql_fetch_row(), mysql_fetch_array(), mysql_num_rows(),
13
dan lain-lain (bergantung pada format keluaran yang diinginkan)
Langkah-langkah yang dilakukan:
1. Membuat basisdata baru dengan nama db_contoh
Contoh Aplikasi: Membuat Counter
2. Membuat tabel baru dengan nama COUNTER. Isi tabel dengan nilai
(awal) 0.
3. Membuat file PHP (counter.php) untuk meng-update nilai counter.
Setiap kali halaman web dibuka, PHP akan meng-update nilai counter
yang ada dalam basisdata db_contoh
14
create DATABASE db_contoh;
create TABLE tb_counter(
Langkah 1&2: Membuat Basisdata dan Tabel
(counter SMALLINT(6) NOT NULL PRIMARY KEY);
INSERT INTO tb_counter VALUES (0);
15
<html><head> <title> Counter </title> </head><?php
$connection = mysql_connect ( "localhost" , "root" , "" );$db = mysql_select_db ( "db_contoh" , $connection )
or die ( "Cannot connect to Database" );
Langkah 3: Membuat file PHP (counter.php)
or die ( "Cannot connect to Database" );mysql_query ( "UPDATE tb_counter SET counter = counter + 1" , $connection )
or die ( "Error on SQL for updating! " );$query = "SELECT counter FROM tb_counter" ;$result = mysql_query ( $query,$connection )
or die ( "Error on SQL for selecting!" );$row = mysql_fetch_row ( $result );echo "<b> You’re visitor number : " ;echo $row[0]."</b>" ;
?></html>
16
</html>