Tutorial membuat website dengan php dan mysql pdf

Dreamweaver CS5 menyediakan settingan yang lebih mudah dalam membuat Site Definition. Berikut adalah langkah-langkah mudahnya: • Klik Site > New Site • Isi Site Name, dalam latihan ini Site Name diisi Websiteku. • Local site folder, silakan klik icon folder pada Local Site Folder dan buatlah folder baru di dalam folder C:\xampp\htdocs\ dengan nama folder Websiteku, sehingga akan muncul C:\xampp\htdocs\Websiteku\. Klik Open > Select. • Klik Server pada list di sebelah kiri. Hal ini akan membuka panel dimana Anda dapat menyetting jenis pengetesan di Local Server ataupun Remote Server. • Klik tanda plus (+) untuk menambah Server baru guna pengetesan website dinamis yang akan kita buat. • Pada menu Basic, klik pada Connect Using: Local/Network • Untuk selanjutnya, gunakan settingan berikut ini: • Server Name: Websiteku • Connect using: Local/Network • Server Folder: ,klik icon folder untuk menemukan folder Websiteku yang tadi telah Anda buat atau dengan mengetikkan C:\xampp\htdocs\Websiteku (hal ini bisa berbeda tergantung dari setinggan computer Anda). • Web URL: http://localhost/Websiteku/ (hal ini juga bisa berbeda tergantung dari setinggan computer Anda). Hal ini member tahu Dreamweaver bahwa website Anda berada dalam document root dengan sub folder bernama Websiteku.

Modul Membuat WEB Dinamis Menggunakan PHP &
2013

Daftar Isi 1.

2.

Basis Data ................................................................................................................................................................... 2 1.1

Konsep Dasar Basis Data ............................................................................................................................ 2

1.2

Komponen Basis Data.................................................................................................................................. 2

1.3

Tujuan Basis Data.......................................................................................................................................... 2

1.4

Hierarki Basis Data ....................................................................................................................................... 2

1.5

Tipe Atribut/Field ......................................................................................................................................... 3

MySQL .......................................................................................................................................................................... 4 2.1

DDL (Data Definition Language) ............................................................................................................. 5

2.2

DML (Data Manipulation Language) .................................................................................................. 10

2.2.1

Insert...................................................................................................................................................... 10

2.2.2

Select ...................................................................................................................................................... 12

A.

Distinct ....................................................................................................................................................... 13

B.

Order By .................................................................................................................................................... 14

C.

Where ......................................................................................................................................................... 15

D.

Where (Like) ........................................................................................................................................... 16

E.

Where (Between) .................................................................................................................................. 17

2.2.3

Update ................................................................................................................................................... 18

2.2.4

Delete ..................................................................................................................................................... 19

2.3 3.

PHP (Hypertext Preprocessor) ...................................................................................................................... 23 3.1

Perintah Dasar PHP ................................................................................................................................... 23

3.1.1

PHP Dalam HTML ............................................................................................................................. 25

3.1.2

HTML Dalam PHP ............................................................................................................................. 25

3.2

Perintah Membuat Waktu di PHP........................................................................................................ 25

3.3

Struktuk Kontrol Pada PHP .................................................................................................................... 28

3.3.1

Pengulangan ....................................................................................................................................... 28

3.3.2

Kondisional ......................................................................................................................................... 29

3.4

4.

Join Tabel ....................................................................................................................................................... 19

Modular dalam PHP................................................................................................................................... 32

3.4.1

Include................................................................................................................................................... 32

3.4.2

Require.................................................................................................................................................. 33

PHP MySQL ............................................................................................................................................................. 33 4.1

mysql_connect("host","username","password"); ......................................................................... 33

4.2

mysql_select_db("nama database"); ................................................................................................... 33

4.3

mysql_query("pernyataan query") ..................................................................................................... 33

4.4

mysql_fetch_row($namavariabelquery); ......................................................................................... 34

Halaman |1 http://phinueisal.wordpress.com

1. Basis Data 1.1 Konsep Dasar Basis Data Basis data (database) merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan dalam perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya. Basis data merupakan salah satu komponen utama dalam sistem informasi, karena merupakan basis dalam penyediaan informasi bagi para pemakai. Contoh dalam kehidupan sehari-hari adalah penggunaan HP di mana pemilik HP dapat menyimpan data kontak, sehingga tidak perlu dicatat secara manual. 1.2 Komponen Basis Data 1. Data, data tersimpan secara terintegrasi dan dipakai secara bersama-sama. 2. Hardware, perangkat keras yang digunakan dalam mengelola sistem database. 3. Software, perangkat lunak perantara antara pemakai dengan data fisik. Perangkat lunak dapat berupa Database Management System dan berbagai program aplikasi. 4. Brainware, sebagai pemakai system. 1.3 Tujuan Basis Data Basis data dibangun untuk memenuhi tujuan dalam pengorganisasian data, yang antara lain sebagai berikut : 1. Efisiensi meliputi kecepatan (speed), ruang simpan (space) dan keakuratan (accuracy). 2. Menangani data dalam jumlah besar. 3. Kebersamaan pemakaian (Shareability). 4. Meniadakan duplikasi dan inkonsistensi data. 1.4 Hierarki Basis Data 1. Database merupakan kumpulan file-file yang berhubungan secara logis dan digunakan secara rutin pada operasi-operasi sistem informasi manajemen 2. File atau tabel adalah kumpulan record yang sejenis dan secara logic

Halaman |2 http://phinueisal.wordpress.com

berhubungan 3. Record atau baris adalah kumpulan item yang secara logic saling berhubungan. Setiap record dapat dikenali oleh sesuatu yang mengenalinya, yaitu field kunci 4. Field atau kolom adalah unit terkecil yang disebut data. 5. Byte adalah bagian terkecil yang dapat dialamatkan dalam memori. Byte merupakan sekumpulan bit yang secara konvensional terdiri atas kombinasi delapan bit. Satu byte digunakan untuk mengkodekan satu buah karakter dalam memori. Contoh: Kode Ascii untuk J ialah 10101010 6. Bit adalah suatu sistem angka biner yang terdiri atas dua macam nilai saja, yaitu 0 dan 1

1.5 Tipe Atribut/Field Jenis/tipe field harus dideklarasikan terlebih dahulu, tipe atribut di antaranya: 1. Text 2. Number 3. Date 4. Image 5. Char Halaman |3 http://phinueisal.wordpress.com

Setiap field pun sebaiknya memilik panjang/lenght data. Hal tersebut berguna untuk membatasi data yang dimasukkan dan tidak memakan memori lebih (misal: memori kosong tidak terpakai karena panjang yang disediakan masih tersisa lebih dibandingkan dengan panjang data yang dimasukkan)

2. MySQL SQL (Structured Query Language) adalah sebuah bahasa yang dipergunakan untuk mengakses data dalam basis data relasional. Salah satu contoh dari DBMS atau perangkat untuk mengakses basis menggunakan bahasa SQL adalah MySQL. a) Dalam MySQL terdapat 2 tipe bahasa, yaitu: 1. DDL (Data Definition Language) Contoh dari bahasa ini adalah mendefinisikan: pembuatan database, tabel, menghapus tabel, dan mengubah tabel Perintah dasarnya: Create Database

: membuat basis data

Create Table

: membuat tabel

Format: Create Table [nama tabel] ( [Nama_kolom] [tipe data](panjang isi) ) 2. DML (Data Manipulation Language) Adalah bahasa untuk memanipulasi data yaitu : 

Pengambilan informasi yang disimpan dalam basis data

Penyisipan informasi baru ke basis data

Penghapusan informasi dari basis data

Modifikasi informasi yang disimpan dalam basis data

Perintah dasarnya adalah: –

SELECT

: mengambil data tabel

UPDATE

: mengubah data tabel

DELETE

: menghapus data tabel

INSERT INTO

: menambah data tabel

Note!

Halaman |4 http://phinueisal.wordpress.com

1.

Untuk nama tabel, database, atau kolom/field harus menggunakan _ (underscore) tidak ada spasi. Kalaupun ingin menggunakan spasi, namanya harus diberikan tanda petik miring yang biasanya ada di bawah tombol ESC. Contoh: Create database si_perpustakaan

contoh yang betul

Create database si perpustakaan

contoh yang salah

Create database `si perpustakaan`

contoh yang betul

b) Atribut Kolom Tabel/Field Terdapat beberapa tipe field di SQL, yaitu: Varchar, Char, Text, INT, Date Selain tipe kolom, terdapat atribut lain yang harus dilengkapi dalam

sebuah

field/kolom, di antaranya: 1. Not NULL

: Tidak boleh kosong

2. Unique

: Tidak boleh ada yang sama/duplikat

3. Primary Key : Tidak boleh duplikat juga, tapi ini dapat dijadikan kunci penting dalam sebuah tabel. Contoh: dalam tabel SISWA yang menjadi Primary Key adalah NIS.

2.1 DDL (Data Definition Language) Praktek 1 Praktek yang akan dilakukan adalah menggunakan aplikasi XAMPP. Pastikan Instalasi XAMPP berjalan lancar, dan Control Panel MySQL running.

Ada 2 cara untuk menjalankan MySQL, berbasis CMD atau WEBbrowser. a. CMD Untuk menjalankan MySQL di CMD dapat dilakukan dengan cara: 2. Langsung ketikkan CMD di start (jika menggunaan Windows 7)

Halaman |5 http://phinueisal.wordpress.com

3. Ketikkan CD C:\ *jika XAMPP terinstal di C: \

4. Ketikkan cd xampp\mysql\bin

5. Setelah itu ketikkan mysql -u root

Keterangan: Maksud dari xampp/mysql/bin adalah kita akan mengeksekusi MySQL, sedangkan MySQL pada XAMPP terdapat di folder xampp/mysql/bin

Halaman |6 http://phinueisal.wordpress.com

Maksud dari mysql –u root adalah –u artinya perintah memanggil username sedangkan root adalah username default/bawaan dari XAMPP. 6. Oke, sudah selesai. Sekarang dapat menjalankan perintah-perintah MySQL di CMD b. Web Browser 1. Buka Webbrowser (contoh chrome) 2. Ketikkan localhost/phpmyadmin di address bar

3. Maka akan muncul tampilan seperti di bawah

d

c a

b

Keterangan: a. Pada MySQL berbasis web ini kita dapat langsung membuat database

tanpa sintak SQL (namun untuk sekarang kita akan menggunakan sintak SQL) b. Kumpulan database dalam server localhost c. Menu dalam MySQL phpMyadmin d. Menunjukkan bahwa belum ada database yang kita pilih 4. Silakan masuk ke Menu SQL 5. Ketikkan sintak untuk membuat database CREATE DATABASE si_perpustakaan Halaman |7 http://phinueisal.wordpress.com

6. Database si_perpustakaan telah dibuat, kemudi klik database tersebut

7. Di sana belum ada tabel yang dibuat.

Di sana dapat membuat tabel tanpa sintak SQL, hanya tinggal memasukkan nama tabel dan jumlah kolom kemudian GO (dan isi nama field serta tipenya) Contoh:

Namun untuk kali ini, akan dipraktekkan menggunakan sintak SQL untuk membuat tabel dalam si_perpustakaan. 8. Masuk ke menu SQL kemudian buat tabel siswa CREATE TABLE

siswa (

NIS varchar(6) NOT NULL, Nama varchar(20) NOT NULL, JenisKelamin enum('L','P') NOT NULL, Alamat text NOT NULL, PRIMARY KEY (NIS) ) Keterangan: 1.

Not Null adalah atribut setiap field yang menyatakan tidak boleh kosong

2.

Enum adalah tipe data pilihan, di mana di tabel di atas JenisKelamin hanya ada pilihan L atau P

Halaman |8 http://phinueisal.wordpress.com

3.

Setelah menjabarkan field, diakhir ditambahkan Primary Key (NIS) untuk menjabarkan bahwa NIS adalah Primary Key dari tabel siswa

9. Setelah itu GO, maka akan tampil seperti:

Dalam database si_perpustakaan telah ditambahkan tabel siswa 10. Masuk ke SQL kembali, ketikkan CREATE TABLE `buku` ( No_Buku varchar(6) NOT NULL, JudulBuku varchar(40) NOT NULL, Pengarang varchar(20) NOT NULL, Penerbit varchar(20) NOT NULL, TahunTerbit int(4) NOT NULL, PRIMARY KEY (No_Buku) )

11. Klik GO, maka akan ada 2 buah tabel yang telah dibuat.

12. Buatlah satu lagi tabel yang merupakan relasi antara buku dan siswa, yaitu tabel peminjaman CREATE TABLE peminjaman ( NIS varchar(6) NOT NULL, No_Buku varchar(6) NOT NULL, TanggalPinjam date NOT NULL, TanggalKembali date NOT NULL )

Halaman |9 http://phinueisal.wordpress.com

2.2 DML (Data Manipulation Language) 2.2.1 Insert Insert adalah perintah SQL untuk memasukkan data ke dalam tabel. Struktur dasarnya adalah: INSERT INTO [nama tabel] VALUES [isifield1,isifield2,..] Contoh memasukkan data ke dalam tabel siswa: INSERT INTO siswa values ('123', 'azizah', 'P', 'bandung') Keterangan: isi tabel di atas harus berurut dengan kolom tabel (NIS, Nama, JenisKelamin, Alamat) dan juga harus lengkap. Dalam artian, semua field tidak boleh kosong. Keempat field harus terisi.

Atau dengan cara: INSERT INTO siswa (NIS, Nama) values ('123', 'azizah') Keterangan: Jika Field JenisKelamin dan alamat boleh kosong, cara yang lebih praktis adalah cara di atas. Yaitu mendeklarasikan terlebih dahulu nama fieldnya kemudian isinya. Jadi, dengan cara di atas isi field tidak harus selalu lengkap dan tidak harus berurut sesuai dengan field tabelnya. Untuk isi field/values tanda petiknya menggunakan petik satu (') biasanya dekat enter.

Praktek 2 1. Jalankan MySQL berbasis Web Browser 2. Masuk ke dalam database si_perpustakaan

3. Masuk menu SQL 4. Ketikkan sintak SQL, kemudian GO INSERT INTO siswa (NIS, Nama, JenisKelamin, Alamat) VALUES ('01234', 'Rizal Anshorullah', 'L', 'Jl. Pegadaian no.107')

Maka hasilnya:

H a l a m a n | 10 http://phinueisal.wordpress.com

5. Jika ingin mengisi lebih dari satu baris, caranya: INSERT INTO `siswa` (`NIS`, `Nama`, JenisKelamin, `Alamat`) VALUES ('01235', 'Arshal', 'L', 'Jl. Kepatihan no.34'), ('01236', 'Habib', 'L', 'Jl. Patenggangan')

6. Isi kembali tabel siswa dengan (di menu SQL): INSERT INTO `siswa` (`NIS`, `Nama`, `JenisKelamin`, `Alamat`) VALUES ('01237', 'Ramdhan', 'L', 'Jl. Air Tawar Padang'), ('01238', 'Vrilga', 'P', 'Jl. Cijeruk no.74'), ('01239', 'Wanodya', 'P', 'Jl. Bahagia no. 46'), ('01241', 'Kamil', 'P', 'Jl. Hanura no. 189'), ('01242', 'Haqisnan', 'P', 'Jl. Cocodetan no.35'), ('01243', 'Ratu Maulida', 'P', 'Jl. Baruajak no.26'), ('01244', 'Syakira', 'P', 'Jl. Ogoan no.3'), ('01245', 'Rivaldo', 'L', 'Jl. Turugtug no. 14'), ('01246', 'Variel Saputra', 'L', 'Jl. Sukses Makmur');

7. Isi tabel buku dengan mengetikkan di jendela SQL: INSERT INTO buku (No_Buku, `Judul Buku`, Pengarang, `Penerbit`, `TahunTerbit`) VALUES ('c0123', 'Algoritma dan Bahasa Pemrograman 1', 'Rinaldi Munir', 'Informatika', 2006), ('c0124', 'Algoritma dan Bahasa Pemrograman 1', 'Rinaldi Munir', 'Informatika', 2007), ('c0125', 'Visual Basic', 'Nurhadi', 'Elexindo', 2009), ('c0126', 'Disain Website Dalam 1 Jam', 'Nur Azizah', 'Rosda', 2010), ('c0127', 'Petunjuk Jalan', 'Muhammad Qadafi', 'Mizan', 2010), ('c0128', 'Motivasi Kehidupan', 'Jamil Azzaini', 'Zaman', 2012), ('c0129', 'Algoritma dan Bahasa Pemrograman 2', 'Rinaldi Munir', 'Informatika', 2006), ('c0130', 'Algoritma dan Bahasa Pemrograman 2', 'Rinaldi Munir', 'Informatika', 2006), ('c0131', 'Visual Basic', 'Nurhadi', 'Alexindo', 2009), ('c0132', '7 Kunci Pintu Rezeki', 'Ipho', 'Zaman', 2008), ('c0133', '7 Kunci Pintu Rezeki', 'Ipho', 'Zaman', 2008), ('c0134', '7 Kunci Pintu Rezeki', 'Ipho', 'Zaman', 2008), ('c0135', 'Fisika Jilid 3', 'Edhi Basko', 'Airlangga', 2012), ('c0136', 'Fisika Jilid 3', 'Edhi Basko', 'Airlangga', 2012), ('c0137', 'Moga Bunda Disayang Allah', 'TereLiye', 'Mizan', 2008), ('c0138', 'My Stupid Boss', 'Edun', 'Derma', 2010), ('c0139', 'Cikeas', 'Robi', 'Republika', 2011);

H a l a m a n | 11 http://phinueisal.wordpress.com

8. Selanjutnya isi tabel peminjaman: INSERT INTO `peminjaman` (`NIS`, `TanggalKembali`) VALUES ('01234', 'c0124', '2013-09-16', ('01235', 'c0130', '2013-09-14', ('01244', 'c0131', '2013-09-06', ('01246', 'c0123', '2013-09-12', ('01236', 'c0134', '2013-09-11', ('01238', 'c0125', '2013-09-15', ('01243', 'c0127', '2013-09-13', ('01242', 'c0136', '2013-09-05', ('01246', 'c0138', '2013-09-05', ('01246', 'c0128', '2013-09-03', ('01237', 'c0126', '2013-09-14', ('01239', 'c0133', '2013-09-04', ('01238', 'c0139', '2013-09-02',

`No_Buku`, `TanggalPinjam`, '2013-09-17'), '2013-09-18'), '2013-09-10'), '2013-09-15'), '2013-09-13'), '2013-09-17'), '2013-09-13'), '2013-09-07'), '2013-09-08'), '2013-09-05'), '2013-09-16'), '2013-09-06'), '2013-09-06');

2.2.2 Select Select adalah perintah SQL yang berguna untuk mengambil data dalam database. Perintah dasarnya adalah: SELECT [nama field] FROM [nama tabel] WHERE [kondisi]

Select * digunakan untuk menampilkan semua field Ingat , setiap perintah SQL kita ketikkan di jendela SQL!

H a l a m a n | 12 http://phinueisal.wordpress.com

Contoh: Select * from siswa

Maka akan menampilkan

Contoh lain jika tidak akan menampilkan semua field Select nama, alamat from siswa

Akan tampil: nama dan alamat saja.

A. Distinct Distint adalah perintah select yang berguna tidak ada duplikasi data. Untuk lebih jelasnya lihat contoh berikut: Select `JenisKelamin` from siswa

Hasilnya adalah:

H a l a m a n | 13 http://phinueisal.wordpress.com

Namun jika kita ketikkan perintah: Select distinct `JenisKelamin` from siswa

Hasilnya:

Jadi distinct tidak akan mengulang isi yang sama, dalam artian distinct hanya sebagai perwakilan isi field yang sama. B. Order By Order By adalah perintah untuk mengurutkan isi tabel, berikut contohnya. Select * from siswa order by nama

Maka akan diurutkan datanya berdasarkan nama:

Jika akan diurutkan secara Z-A hanya ditambah desc Select * from siswa order by nama desc

H a l a m a n | 14 http://phinueisal.wordpress.com

C. Where Where adalah klausa yang digunakan untuk membatasi sebuah perintah, terutama dalam perintah select. Seperti contoh: Contoh 1: Select * from siswa where NIS='01234'

Hasilnya adalah akan menampilkan data siswa yang memiliki NIS 01234

Contoh 2: Select * from siswa where NIS='01234' OR NIS='01235'

Maksud dari perintah di atas adalah menampilkan data siswa yang memiliki NIS 01234 atau 01235. Karena kedua NISnya ada, maka ditampilkan kedua-duanya.

Contoh 3: Select * from siswa Where NIS>=01234 AND NIS<=01237

Maksud dari perintah di atas adalah menampilkan data siswa yang memiliki NIS 01234 ke atas dan NIS 01237 ke bawah. Atau dalam kata lain di antara 01234-01237

Contoh 4: Select * from siswa Where not NIS=01234

Maksud dari perintah di atas adalah menampilkan data siswa yang memiliki NIS selain 01234 H a l a m a n | 15 http://phinueisal.wordpress.com

D. Where (Like) Like adalah operator yang berguna mencari data dengan kriteria tertentu, dengan menggunakan wildcard, yaitu: % (persen) artinya boleh 0, 1, atau lebih karakter _ (underscore) artinya tepat satu karakter Contoh Pola '% a% ' '%a ' 'a% ' '_zizah ' '__izah '

Keterangan Cocok dg apa saja yg mengandung karakter a Cocok dg yg berakhiran a Cocok dg yg berawalan a Ada tepat 1 karakter di depan Ada tepat 2 karakter di depan

Contoh 1 Select * from siswa Where nama like 'r% '

Maka akan tampil nama yang berawalan R

Contoh 2 Select * from siswa Where nama like '%a'

Maka akan tampil nama yang berakhiran a H a l a m a n | 16 http://phinueisal.wordpress.com

Contoh 3 Select * from siswa Where nama like '%v%'

Maka akan muncul nama yang mengandung huruf v

Contoh 4 Select * from siswa Where nama not like '%a'

Maka hasilnya adalah menampilkan data kecuali yang namanya berakhiran A. maka hasilnya tidak ada yang berakhiran A

E. Where (Between) Between adalah operator yang digunakan untuk menangani operasi jangkauan. Perintah dasarnya adalah SELECT namafield FROM table WHERE [namafield yang digunakan untuk syarat] BETWEEN nilai1 AND nilai2

Contoh 1 Select * from siswa Where NIS between '01235' AND '01238'

Maka hasilnya adalah menampilkan data siswa yang memiliki NIS antara 01235-01238

H a l a m a n | 17 http://phinueisal.wordpress.com

Contoh 2 Select * from siswa Where NIS not between '01235' AND '01238'

Maka hasilnya adalah menampilkan data siswa kecuali/selain yang memiliki NIS antara 0123501238

2.2.3 Update Update adalah perintah SQL yang berguna untuk mengubah isi tabel yang memenuhi kondisi pada WHERE. Contoh: Update siswa set nama='Syakira Ratu'

Jika perintah tersebut dijalankan, maka semua nama siswa makna berubah menjadi Syakira Ratu! Oleh karena itu, harus ada batasan mana yang akan di ubah. Seperti contoh dibawah:

Contoh 1 Update siswa set nama='Syakira Ratu' where NIS='01244'

Maka, hanya NIS 01244 yang berubah menjadi Syakira Ratu, di mana nama asalnya adalah Syakira.

Contoh 2 Jika akan mengubah lebih dari satu field : Update siswa set nama='Ratu Maulyda', alamat='Jl.Aceh no.26' where NIS='01243'

H a l a m a n | 18 http://phinueisal.wordpress.com

Maka yang asalnya Nama= Ratu Maulida alamat=Jl.Baruajak no.26 berubah sesuai perintah.

2.2.4 Delete Delete berguna untuk menghapus satu atau lebih baris/rekord sesuai kondisi pada where Ketika perintah delete tidak menggunakan where, maka semua data akan terhapus. Misal: Delete from siswa ->

akan menghapus semua isi tabel siswa

Contoh 1 Delete from siswa where NIS= '01236'

Jika dijalankan, makan data siswa yang memiliki NIS 01236 akan terhapus, sebelumnya akan ada konfirmasi kepastian menghapus dari MySQL

2.3 Join Tabel Dalam sebuah basis data tentu dapat terdiri lebih dari 1 tabel. Terkadang dalam pembentukan data tidak hanya berasal dari satu tabel. Oleh karena itu diperlukan penggabungan tabel agar data yang dibutuhkan dapat ditampilkan. Seperti contoh kasus si_perpustakaan. Terdapat 3 tabel, yaitu:

Tabel peminjaman ada karena ada tabel siswa dan buku. Pada tabel peminjaman hanya terdapat NIS, No_buku, TanggalPinjam, dan kembali. Bagaimana jika ingin menampilkan H a l a m a n | 19 http://phinueisal.wordpress.com

tabel yang terdiri dari Nama, judul buku, TanggalPinjam dan TanggalKembali? Maka JOIN tabel diperlukan untuk kasus ini. Tabel Siswa

Tabel Buku:

Tabel Peminjaman

H a l a m a n | 20 http://phinueisal.wordpress.com

Kasus 1 Ketika akan menampilkan nama peminjam buku, TanggalPinjam, dan TanggalKembali. Jika hanya menggunakan tabel peminjaman, yang ada hanya NIS. Sedangkan Nama ada di Tabel siswa. Yang menghubungkan antara tabel peminjaman dan siswa adalah NIS. SELECT nama, `TanggalPinjam` , `TanggalKembali` FROM siswa, peminjaman WHERE siswa.NIS = peminjaman.NIS

Keterangan 1. Bagian from ada 2 tabel yang disebut yaitu siswa dan peminjaman. Mengapa siswa? Karena field nama hanya ada di tabel siswa. Sedangkan TanggalPinjam dan kembali ada di tabel peminjaman. 2. Mengapa siswa.NIS dan peminjaman.NIS? Yang akan disamakan adalah NIS di peminjaman dan siswa, dan nama field NIS ada di siswa dan peminjaman. Oleh karena itu nama fieldnya harus disertai nama tabel agar tidak tertukar/duplikat.

Kasus 2 Ketika

akan

menampilkan

judul

buku

yang

dipinjam,

TanggalPinjam,

dan

TanggalKembali. Jika hanya menggunakan tabel peminjaman, yang ada hanya No_buku. Sedangkan No_buku ada di Tabel buku. Yang menghubungkan antara tabel peminjaman dan buku adalah No_buku. SELECT `judul buku`, `TanggalPinjam` , `TanggalKembali` FROM buku, peminjaman WHERE buku.No_buku = peminjaman.No_buku H a l a m a n | 21 http://phinueisal.wordpress.com

Keterangan 1. Bagian from ada 2 tabel yang disebut yaitu siswa dan peminjaman. Mengapa siswa? Karena field nama hanya ada di tabel siswa. Sedangkan TanggalPinjam dan kembali ada di tabel peminjaman. 2. Mengapa buku.No_buku dan peminjaman.No_buku? Yang akan disamakan adalah No_buku di peminjaman dan buku, dan nama field No_buku ada di buku dan peminjaman. Oleh karena itu nama fieldnya harus disertai nama tabel agar tidak tertukar/duplikat.

Kasus 3 Ketika akan menampilkan nama peminjam, judul buku yang dipinjam, TanggalPinjam, dan TanggalKembali, berarti ada 3 tabel yang akan digabungkan. Tabel buku untuk mengambil judul buku, tabel siswa untuk mengambil nama siswa, dan tabel peminjaman untuk mengambil TanggalPinjam serta kembali. SELECT nama, `judul buku`, `TanggalPinjam` , `TanggalKembali` FROM siswa, buku, peminjaman WHERE buku.No_buku = peminjaman.No_buku AND Siswa.NIS = peminjaman.NIS

H a l a m a n | 22 http://phinueisal.wordpress.com

3. PHP (Hypertext Preprocessor) PHP merupakan bahasa pemrograman berbasis web yang memiliki kemampuan untuk memproses dan mengolah data secara dinamis. PHP berbeda dengan HTML. Jika HTML dapat dijalankan langsung di Web Browser, sedangkan PHP harus menggunakan server untuk dapat dijalankan di Web Browser. Salah satu server yang dapat digunakan adalah Apache. Di dalam XAMPP terdapat Apache. Oleh karena itu, kita tidak perlu lagi menginstal Apache. Hal yang harus diperhatikan di dalam menyimpan File *.php adalah file tersebut harus disimpan

di

dalam

folder

htdocs.

Jika

menggunakan

XAMPP,

misalnya

c:\xampp\htdocs\nama_folder_tempat_menyimpan_file Untuk membuat kode php, kita dapat menggunakan notepad atau software editor lain seperti dreamweaver. 3.1 Perintah Dasar PHP 1. Salah satu penulisan skrip php secara resmi diawali dengan . 2. php sama seperti bahasa c. Dia bersifat Case sensitive (huruf besar dan kecil berbeda) 3. diakhiri dengan tanda ; Variabel dalam PHP

Dalam PHP, variabel yang akan digunakan tidak didefinisikan terlebih dahulu. Variabel dalam PHP bersifat case-sensitive artinya besar kecil huruf berpengaruh. Setiap nama variabel dalam PHP diawali dengan $. Contoh $variabel1, $var1, $var2. Perlu diingat bahwa $tanggal itu berbeda dengan $Tanggal (sifat case-sensitive).

Contoh pemrograman dasar PHP adalah:

Kode print berguna untuk menampilkan tulisan dalam web.

H a l a m a n | 23 http://phinueisal.wordpress.com

Praktek 1! 1. Buka notepad 2. Pastikan XAMPP Control berjalan Apachenya: caranya masuk ke c:\xampp\ kemudian double click XAMPP Control.exe

3. Buat terlebih dahulu folder belajar_php di dalam folder htdocs 4. Ketikkan kode di bawah di notepad. 5. Simpan dengan nama belajar.php simpan di c:\xampp\htdocs\belajarphp 6. Buka web browser, kemudian ketikkan: localhost/phpmyadmin/belajar_php/belajar.php Maka akan muncul:

Praktek 2 (menggunakan variabel)! 1. Buka notepad baru 2. Ketikkan kode di bawah "; echo "Isi dari variabel b = $b
"; echo "a + b = $c"; ?>

3. Simpan dengan nama belajarvariabel.php 4. Hasilnya di localhost/belajar_php adalah

H a l a m a n | 24 http://phinueisal.wordpress.com

3.1.1 PHP Dalam HTML Kode PHP dapat digabungkan dengan HTML. Salah satunya adalah menyelipkan kode PHP dalam HTML. Seperti contoh:

PHP Dalam HTML

Jadi, dalam tag/kode HTML terdapat kode PHP Hasilnya ketika dijalankan:

3.1.2 HTML Dalam PHP Kode HTML yang diselipkan dalam PHP contohnya adalah: "; echo "

Contoh membuat tabel dalam php

"; ?>

Hasilnya adalah:

Dari kode php di atas, ada kode HTML seperti
dan

. Kode HTML tersebut harus selalu berada dalam perintah print/echo jika berada dalam kode php () 3.2 Perintah Membuat Waktu di PHP Untuk menampilkan tanggal sekarang di dalam file php adalah dengan menambahkan: H a l a m a n | 25 http://phinueisal.wordpress.com

a

$tanggal=date ('d-m-Y');

b

echo "$tanggal";

c

?>

Keterangan a

: mengatur terlebih dahulu waktu yang akan kita tampilkan. Konsepnya adalah

NamaBenua/NamaKota. Tidak semua kota seluruh dunia tersedia. Hanya perwakilan waktu di setiap negara (contoh Jakarta, Ujung_pandang, Jayapura) b

: $tanggal merupakan variabel date merupakan perintah untuk mengambil tanggal yang telah diset d-m-Y merupakan format tanggal yang akan ditampilkan (lihat Tabel 3.1) d : tanggal m : bulan Y : tahun

c

: perintah menampilkan tanggal di halaman web

Tabel 3.1 Format Tanggal dan Waktu dalam PHP Format

Keterangan

Hasil

Hari

---

---

d

Hari dalam bulan dengan menggunakan 2 digit (diawali 0)

01 sampai 31

D

Nama Hari menggunakan tulisan berbahasa Inggris sebanyak 3 huruf

Mon sampai Sun

j

Hari dalam bulan dengan tanpa diawali 0 (nol)

1 sampai 31

l ('L' kecil) N

S

Nama Hari menggunakan tulisan berbahasa Inggris penuh

Sunday sampai Saturday

Nama Hari menggunakan angka

1 (untuk Senin) sampai 7 (untuk Minggu)

Akhiran ordinal Inggris untuk tanggal dalam sebuah bulan

st, nd, rd or th. Bagus dipadukan dengan j Contoh: 1 st, 2 nd, 23rd, 14 th H a l a m a n | 26 http://phinueisal.wordpress.com

Format

Keterangan

w

Representasi nomor dalam tiap minggu

z

Nomor hari dalam setahun (Mulai dari 0)

0 sampai 365

Minggu

---

---

W Bulan

Hasil 0 (untuk Minggu) sampai 6 (untuk Sabtu)

ISO-8601 nomor Minggu dalam sebuah tahun (ditambahkan di PHP 4.1.0) ---

COntoh: 42 (Minggu ke 42 dalam suatu tahun) --January sampai December

F

Nama bulan secara full dalam bahasa Inggris

m

Representasi bulan dalam nomor (diawali dengan 0)

01 sampai 12

M

Nama bulan (3 huruf) dalam bahasa Inggris

Jan sampai Dec

n

Representasi bulan dalam nomor (tanpa diawali dengan 0)

1 sampai 12

t

Number of days in the given month

28 sampai 31

Tahun

---

---

L

Whether it's a leap year

Y

Tahun full 4 digit

Examples: 1999 or2003

y

Tahun yang hanya 2 digit akhir

Examples: 99 or 03

Waktu

---

---

1 if it is a leap year, 0 otherwise.

a

Untuk memberikan tanda am/pm dalam bentuk huruf kecil

am or pm

A

Untuk memberikan tanda am/pm dalam bentuk huruf besar

AM or PM

B

Pencarian waktu internet

000 sampai 999

g

Format 12 jam tanpa diawali 0

1 sampai 12

G

Format 24 jam tanpa diawali 0

0 sampai 23

h

Format 12 jam diawali dengan 0

01 sampai 12

H

Format 24 jam diawali dengan 0

00 sampai 23

i

Menit diawali dengan 0

00 sampai 59

s

Detik diawali dengan 0

00 sampai 59 H a l a m a n | 27 http://phinueisal.wordpress.com

3.3 Struktuk Kontrol Pada PHP Seperti halnya bahasa pemograman lain, dala PHP pun terdapat struktur pengulangan dan pemilihan/kondisional. 3.3.1 Pengulangan a. For - Struktur dasar dari for adalah:

for (nilai awal; kondisi/batasan; peningkatan/penurunan) { Pernyataan/perintah; }

-

Contoh Skrip/kode: for.php

"; } ?>

Hasilnya:

b. While - Struktur dasar dari while adalah:

Nilai awal; while (kondisi/batasan) { Pernyataan/perintah; Peningkatan/penurunan  contoh i++ atau i-} -

Contoh Skrip/kode: while.php "; $i++ } ?>

Hasilnya: H a l a m a n | 28 http://phinueisal.wordpress.com

c. Do.. While - Struktur dasar dari do.. while adalah:

Nilai awal; do { Pernyataan/perintah; Peningkatan/penurunan  contoh i++ atau i-} While (kondisi/batasan) -

Contoh Skrip/kode: while.php "; $i++ } While($i<=10) ?> Hasilnya:

3.3.2 Kondisional a. IF -

Struktur dasar dari IF IF (kondisi) { Aksi }

-

Contoh Skrip IF if.php

H a l a m a n | 29 http://phinueisal.wordpress.com

b. IF.. ELSE -

Struktur dasar dari IF

IF (kondisi) { Aksi 1 } else { Aksi 2 } -

Contoh Skrip IF ifelse.php

c. Switch -

Struktur dasar switch

Switch(kondisi) { case konstanta1 : pernyataan1; break; case konstanta2 : pernyataan2; break; . . default : pernyataan default; }

H a l a m a n | 30 http://phinueisal.wordpress.com

-

Contoh skrip

-

Maka hasilnya adalah:

Jika diganti variabel harinya, maka akan sesuai dengan perintah case di atas. Jika nomor selain 1-7, maka akan muncul “nomor hari salah”

H a l a m a n | 31 http://phinueisal.wordpress.com

3.4 Modular dalam PHP 3.4.1 Include Include adalah suatu bentuk fungsi untuk menggabungkan satu file skrip PHP dengan file PHP lainnya. Script atau file yang digabung tidak harus berisi script program PHP. Contoh: Misal kita memiliki file: 1. bagianatas.php

2. bagianbawah.php

3. halamanutama.php ini merupakan contoh halaman utama yang menggabungkan 3 file php
"; Include "bagianbawah.php"; ?> Ketika dijalankan halamanutama.php adalah:

Dapat disimpulkan bahwa include berguna: 1. Jika ada banyak halaman yang memiliki konten yang sama, maka hanya tinggal buat file tersendiri untuk konten yang sama, kemudian dapat dipakai oleh semua file PHP yang membutuhkannya. (Ingat, usahakan Semua file tersebut dalam satu folder agar lebih mudah dalam pemanggilan!) 2. Dengan dibuat terpisah, ketika ada kesalahan dalam konten yang sama tersebut, kita hanya tinggal mengubah satu file yang terpisah itu.

H a l a m a n | 32 http://phinueisal.wordpress.com

3.4.2 Require Require memiliki fungsi yang sama dengan include. Jika skrip/kode di atas diganti menjadi require, maka tidak akan ada perbedaannya. Letak perbedaannya adalah jika dalam skripnnya terjadi kesalahan atau error. Letak perbedaannya adalah 

Include. Jika terjadi sebuah kesalahan / error akan menampilkan sebuah peringatan namun script akan terus di eksekusi

Require. Jika terjadi sebuah kesalahan / error akan menampilkan sebuah peringatan dan script akan berhenti di eksekusi

4. PHP MySQL Di dalam PHP terdapat fungsi yang berguna untuk mengoneksikan antara PHP dengan database MySQL. Sebelum praktek, fungsi yang akan digunakan adalah: 4.1 mysql_connect("host","username","password"); fungsi tersebut akan mereturn/mengembalikan nilai TRUE jika koneksi ke MySQL sukses dan akan mengembalikan nilai FALSE jika koneksi gagal. Biasanya koneksi bawaannya adalah: nama host

: localhost

username

: root

password

: dikosongkan

4.2 mysql_select_db("nama database"); Selanjutnya apabila koneksi telah berhasil, langkah berikutnya adalah memilih database yang ada di dalam localhost dengan username root

dengan menggunakan

mysql_select_db("nama database") Seperti halnya fungsi koneksi sebelumnya, fungsi select db juga akan mengembalikan nilai TRUE jika nama database ditemukan dan FALSE bila database yang diinginkan tidak ditemukan. 4.3 mysql_query("pernyataan query") Fungsi lain yang diperlukan setelah mengakses database adalah mysql_query. Fungsi tersebut adalah untuk menjalankan query yang kemudian akan diolah sehingga akan dihasillkan data yang berkaitan dengan query tadi. H a l a m a n | 33 http://phinueisal.wordpress.com

Fungsi tersebut akan menghasilkan nilai TRUE jika query sukses dijalankan. FALSE jika query gagal dilakukan. Biasanya dijabarkan dengan skrip: $namavariabelquery=mysql_query("pernyataan query"), contoh: $hasil=mysql_query("select * from siswa");

4.4 mysql_fetch_array($namavariabelquery); Apabila query yang diberikan berkaitan dengan pencarian record data (select ..from), maka selanjutnya hasil pencarian record tersebut diambil untuk kemudian di

tampilkan sebagai output di dalam website. Untuk mengambil record dari query, digunakan fungsi mysql_fetch_array. Biasanya dijabarkan dengan skrip: $namavariabelarray=mysql_fetch_array($namavariabelquery), contoh: $tampilhasil=mysql_fetch_array($hasil) Fungsi di atas akan menghasilkan data array (lebih dari satu) sesuai dengan yang ada di dalam database. Biasanya untuk memunculkan lebih dari satu data dalam php, dikombinasikan dengan perintah: while ($tampilhasil=mysql_fetch_array($hasil)){ echo "$tampilhasil[NIS]"; } Maka akan tampil field NIS saja dengan jumlah sesuai yang ada di dalam database. Jika tanpa perintah while, maka yang muncul hanya ada 1. Agar lebih jelasnya materi dari modul ini, silakan kerjakan Jobsheet PHP&MySQL yang terdiri dari beberapa bagian!

H a l a m a n | 34 http://phinueisal.wordpress.com