27
PHP Accessing MySQL Database Fajar Pradana S.ST., M.Eng

PHP dan MySQL · Membuat tabel Memodifikasi tabel Menghapus tabel Menambah user (user database) Mengatur permission (user database ... dari lebih dari 1 tabel menggunakan JOIN. SELECT

  • Upload
    lythien

  • View
    240

  • Download
    0

Embed Size (px)

Citation preview

PHP – Accessing MySQL Database

Fajar Pradana S.ST., M.Eng

PHP – MySql installed

MySql telah running (cek xampp control panel)

Database

Tabel

Query SQL (Structured Query Language)

Script PHP untuk pengolahan database

Output (HTML)

Requirements

Langkah yang dilakukan utk mengolah database :

1. Membuat Koneksi dengan Database

2. Memilih database

3. Membentuk perintah SQL untuk pengolahan data

4. Mengirimkan / eksekusi perintah

5. Mengakses hasil eksekusi perintah

6. Menampilkan output

7. Menutup sambungan

Steps

Form login

Pengambilan data login user di database dan mencocokan

dengan data input dari user

List tabel

Menampilkan data dalam sebuah tabel (mis: tabel daftar

mahasiswa)

Detail data

Menampilkan data detail dari sebuah tabel (mis: detail biodata

mahasiswa berdasarkan NIM tertentu)

dll

Contoh implementasi

SQL (Structured Query Language) adalah bahasa yang khusus digunakan untuk mengoperasikan database.

Untuk memudahkan, SQL query dapat dikelompokkan menjadi tiga jenis :

Query untuk mengelola data

Query untuk mengakses data dalam 1 tabel

Query untuk mengakses data lebih dari 1 tabel

SQL Manager : Software yang digunakan untuk mengolah database dalam server

PHPMyAdmin

SQLyog

EMS

SQL

Yang termasuk dalam kelompok query ini adalah :

Membuat database

Menghapus database

Membuat tabel

Memodifikasi tabel

Menghapus tabel

Menambah user (user database)

Mengatur permission (user database)

Menghapus user (user database)

Query u/ Mengelola Database

Membuat databaseCREATE DATABASE <nama database>

Menghapus databaseDROP DATABASE

Membuat tabelCREATE TABLE userTable(

UserId INT (3),

UserName VARCHAR (50),

Password VARCHAR (50),

NamaLengkap VARCHAR (50)

);

Menghapus tabelDROP TABLE <nama tabel>;

Query u/ Mengelola Database (cont.)

Query satu tabel digunakan untuk mengelola data dalam satu tabel

Beberapa perintah yang dapat digunakan :

Query u/ 1 Tabel

Fungsi Query

Input data INSERT

Modifikasi data UPDATE

Mengambil data SELECT

Menghapus data DELETE

Menghitung banyaknya data COUNT

Menjumlah data SUM

Menghitung rata-rata AVG

dll

SQL INSERTINSERT INTO userTable VALUES (

1,

‘username',

‘password',

‘Username testing'

);

SQL UPDATEUPDATE userTable

SET password=’test’

WHERE UserName=’username’

SQL SELECTSELECT *

FROM UserTable

WHERE UserId=1

SQL DELETEDELETE FROM UserTable

WHERE NamaLengkap=’Username Testing’

Query u/ 1 Tabel (cont.)

Kelompok Query ini digunakan untuk mengambil data

dari lebih dari 1 tabel menggunakan JOIN.

SELECT * FROM

UserTabel JOIN Biodata

ON UserTabel.idUser = Biodata.idUser

Query u/ Banyak Tabel

11

1. Koneksi ke MySQL

2. Memilih Database

3. Akses ke Table

4. Akses Record dan Field

5. Memposisikan record

6. Insert dan Delete record

1. Koneksi ke mySQL

Sebelum melakukan ases ke database mySQL pekerjaan pertama adalah melakukan koneksi ke database

Perintah untuk melakukan koneksi adalah :

mysql_connect(host,nama_pemakai,password)

Perintah untuk menutup koneksi :

mysql_close(pengenal_hubungan);

12

Jika koneksi gagal

Statement ini akan muncul

HASIL PROGRAM

2. Memilih Database

Jika connect ke database berhasil, perlu memilih database

Perintah untuk memilih database:

mysql_select_db(data_base,pengenal_hubungan)

dimana : data_base = nama database

pengenal_hubungan = nama pengenal yang

digunakan dalam koneksi

13

Jika select database gagal

kalimat ini tidak muncul

3. Akses ke table

Dimisalkan telah dibuat table

bernama :Tabel1 dalam database

bernama coba

Table yang bernama Tabel1 memiliki

struktur sbb:

nama varchar (20)

umur int(2)

Adapun data-datanya adalah:

Sarjono 35

Budiman 18

Joko Waluyo 21

Bambang Sudiyono 28

14

Berikut tampilan struktur tabel

dan data dari phpMySql

STRUKTUR TABEL

akses ke Tabel …

Membuat query :

mysql_query(query,h

andle)

Mengatahui jumlah

field:

mysql_num_fields

(handle)

Mengatahui jumlah

record:

mysql_num_rows

(handle)

15

HASIL

PROGRAM

Akses tabel

Untuk mengakses record hasil query:

$baris=mysql_fetch_row(handle) akan mengembalikan array yang berisiseluruh kolom $baris[0], $baris[1],…

16

Hasil

PROGRAM

4. Akses field dengan mysql_fetch_field

17

Untuk mengakses field digunakan :

mysql_fetch_field(handle, nomorkolom)

Objek hasil fetch dapat diases a.l. :

->name = nama field

->max_length = lebar field

HASIL

akses field dengan mysql_field_ …

Cara lain ases field adalah (nomor field : 0,1,2..)

mysql_field_name(handle,kolom) : nama field ke-(kolom+1)

mysql_field_len(handle,kolom) :lebar field ke-(kolom+1)

mysql_field_type(handle,kolom) : tipe field ke-(kolom+1)

18

Akses Table Menampilkan Foto

19

Sebelumnya dibuat table Biodata dalam database coba yang berisi 2

field: nama dan Foto (untuk field foto berisi nama file dan folder foto).

Siapkan foto sesuai nama fotonya

STRUKTUR TABEL NYA : Tabel Biodata

ISI DATA-DATA NYA JIKA DI BROWSE di phpMyAdmin

Akses Table Menampilkan Foto

20

Script Lengkapnya adalah …

Daftar Table dalam database

21

Untuk mengetahui tabel-tabel dalam database :

mysql_list_tables(namaDataBase)

Database :

coba

Jumlah tabel :2

CONTOH PROGRAM

Hasilnya :

5. Memposisikan record dengan seek

Memposisikan pointer pada record tertentu :

mysql_data_seek(handle,posisi)

Posisi =posisi record, dimulai dari 0 untuk record pertama

CONTOH:

Database : Coba

Tabelnya : tabel1

22

Posisikan ke record ke - 4

Hasilnya :

6. Menginsert dan menghapus record

Perintah SQL untuk menginsert

record :

INSERT INTO `namatabel`

(`namafield1’,

`namafield2`,..) VALUES

(‘nilaifeild1', ‘nilaifield2‘,..)";

Contoh:

INSERT INTO `tabel1`

(`nama`, `umur`) VALUES

('Andi', '15')";

23

HASIL 3 KALI

setelah dijalankan 10 kali

24

Jika program insertRecord.php di eksekusi 10 kali, hasilnya …

menghapus record

Perintah SQL untuk menghapus record :

DELETE FROM `namatabel` WHERE ‘namafield’=‘nilaifeild1‘ AND ‘namafield’=‘nilai’ OR …;

Contoh:

DELETE FROM `tabel1` WHERE `nama`=‘Andi’ menghapus semua record jika nama=‘Andi’

25

Setelah

program

dijalankan

26

Rangkuman

PHP dapat mengakses database mySQL dan mengakses tabel,

record, field dan fungsi-fungsi manipulasi data

Cara mengakses dengan mendefinisikan fungsi-fungsi mysql

dalam bentuk perintah SQL

Urutan pengakksesan PHP : membuat koneksi, memilih

database dan memilih tabel

Pada tabel yang terpilih manipulasi record seperti

menginsetkan, menghapus, mengubah data dan seterusnya

dilakukan

27

<?php echo “thank you”; ?>