crud php - blog.herusulistiono.net filewebsite dinamis situs dinamis adalah situs yang mengubah atau...

35
CRUD PHP Workshop 1

Upload: ngodien

Post on 16-Jun-2019

236 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

CRUD PHP

Workshop 1

Page 2: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Sejarah Website

Sebuah situs, adalah kumpulan terkait halaman web, termasuk multimedia konten, biasanya diidentifikasi dengan umum nama domain, dan diterbitkan pada setidaknyasatu web server . Sebuah situs web dapat diakses melalui jaringan Internet Protocol (IP) publik, seperti Internet, atau jaringan area lokal pribadi (LAN), dengan merujuk pencarisumber daya seragam (URL) yang mengidentifikasi situs tersebut.

The World Wide Web (WWW) diciptakan pada tahun 1990 oleh CERN fisikawan InggrisTim Berners-Lee . Pada tanggal 30 April 1993, CERN mengumumkan bahwa World Wide Web akan bebas digunakan untuk siapa saja. Sebelum pengenalan HTML dan HTTP, protokol lain seperti File Transfer Protocol dan protokol gopher digunakan untukmengambil file individual dari server. Protokol ini menawarkan struktur direktorisederhana dimana pengguna menavigasi dan memilih file yang akan diunduh. Dokumenpaling sering disajikan sebagai file teks biasa tanpa format, atau dikodekan dalamformat pengolah kata.

Workshop 2

Page 3: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Client Side Scripting

Biasanya, klien adalah aplikasi komputer, seperti browser web, yang berjalan di komputer lokal pengguna, smartphone, atau perangkat lain, dan terhubung ke server seperlunya. Operasi dapat dilakukan sisi klienkarena mereka memerlukan akses terhadap informasi atau fungsionalitas yang tersedia pada klien namuntidak di server, karena pengguna perlu mengamati operasi atau memberikan masukan, atau karena server tidak memiliki kekuatan pemrosesan untuk melakukan Operasi pada waktu yang tepat untuk semua klienyang dilayaninya. Selain itu, jika operasi dapat dilakukan oleh klien, tanpa mengirim data melalui jaringan, mereka mungkin memerlukan sedikit waktu, kurang menggunakan bandwidth, Dan menimbulkan risikokeamanan yang lebih rendah.

Ketika server menyajikan data dengan cara yang umum digunakan, misalnya sesuai dengan protokol standarseperti HTTP atau FTP, pengguna mungkin memiliki pilihan dari sejumlah program klien (misalnya, perambanweb modern dapat meminta dan menerima data menggunakan HTTP dan FTP ). Dalam kasus aplikasi yang lebih khusus, pemrogram dapat menulis server, klien, dan protokol komunikasi mereka sendiri yang hanyadapat digunakan satu sama lain.

Program yang berjalan di komputer lokal pengguna tanpa pernah mengirim atau menerima data melaluijaringan tidak dianggap sebagai klien, sehingga operasi program semacam itu tidak akan disebut operasi sisiklien.

Workshop 3

Page 4: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Client Side Scripting

Dalam konteks World Wide Web , bahasa komputer yang sering ditemui yang dievaluasi

atau dijalankan di sisi klien meliputi:

Cascading Style Sheets (CSS)

HTML

JavaScript

Workshop 4

Page 5: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Server Side ScriptingServer side scripting adalah teknik yang digunakan dalam pengembangan web yang melibatkan penggunaan skrip pada server web

yang menghasilkan respons yang disesuaikan untuk permintaan setiap pengguna (klien) ke situs web. Alternatifnya adalah untuk web

server itu sendiri untuk mengantarkan sebuah halaman web statis . Skrip dapat ditulis dalam beberapa bahasa script sisi server yang

tersedia (lihat di bawah). Skrip sisi server dibedakan dari skrip sisi klien di mana skrip tertanam, seperti JavaScript , dijalankan

dengan sisi klien di browser web , namun kedua teknik tersebut sering digunakan bersamaan.

Server side scripting sering digunakan untuk menyediakan antarmuka yang disesuaikan bagi pengguna. Skrip ini dapat mengumpulkan

karakteristik klien untuk digunakan dalam menyesuaikan respons berdasarkan karakteristik, persyaratan pengguna, hak akses, dsb.

Skrip sisi server juga memungkinkan pemilik situs menyembunyikan kode sumber yang menghasilkan antarmuka, sedangkan dengan

sisi klien Scripting, pengguna memiliki akses ke semua kode yang diterima oleh klien. Sebuah sisi bawah untuk penggunaan script sisi

server adalah bahwa klien perlu melakukan permintaan lebih lanjut melalui jaringan ke server untuk menunjukkan informasi baru

kepada pengguna melalui browser web. Permintaan ini dapat memperlambat pengalaman bagi pengguna, menempatkan lebih banyak

beban pada server, dan mencegah penggunaan aplikasi saat pengguna diputuskan dari server.

Ketika server menyajikan data secara umum digunakan, misalnya menurut HTTP atau FTP protokol , pengguna dapat memiliki pilihan

mereka dari sejumlah program klien (paling web browser modern dapat meminta dan menerima data menggunakan kedua dari

mereka protokol). Dalam kasus aplikasi yang lebih khusus, pemrogram dapat menulis server, klien, dan protokol komunikasi mereka

sendiri, yang hanya dapat digunakan satu sama lain.

Program yang berjalan di komputer lokal pengguna tanpa pernah mengirim atau menerima data melalui jaringan tidak dianggap

sebagai klien, sehingga operasi program semacam itu tidak akan dianggap sebagai operasi sisi klien.

Workshop 5

Page 6: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Ada sejumlah bahasa Server side scripting

yang tersedia:

PHP

Perl

Python

Java

ASP

Ruby

Dll

Workshop 6

Page 7: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Website Statis

Situs statis adalah situs yang memiliki halaman web yang tersimpan di server dalam format

yang dikirim ke browser web klien. Ini terutama dikodekan dalam Hypertext Markup Language

(HTML); Cascading Style Sheets(CSS) digunakan untuk mengontrol tampilan diluar basic HTML.

Gambar biasanya digunakan untuk mempengaruhi penampilan yang diinginkan dan sebagai

bagian dari konten utama. Audio atau video mungkin juga dianggap konten "statis" jika

diputar secara otomatis atau umumnya tidak interaktif.

Workshop 7

Page 8: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Website Dinamis

Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan

otomatis. Halaman dinamis sisi server dihasilkan "on the fly" dengan kode komputer yang

menghasilkan HTML (CSS bertanggung jawab atas tampilan dan dengan demikian, adalah file statis).

Ada berbagai macam sistem perangkat lunak, seperti CGI , Java Servlets dan Java Server Pages (JSP),

Active Server Pages dan ColdFusion (CFML) yang tersedia untuk menghasilkan sistem web dinamis dan

situs dinamis . Berbagai kerangka aplikasi web dan sistem templat web tersedia untuk bahasa

pemrograman penggunaan umum seperti Perl ,PHP , Python dan Ruby membuatnya lebih cepat dan

mudah untuk membuat website dinamis yang kompleks.

Workshop 8

Page 9: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Perangkat Lunak untuk membuat Website

Xampp Server

Notepad++

Workshop 9

Page 10: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Tata Letak Penyimpanan berkas website

Pada Xampp

Workshop 10

Page 11: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Tata Cara Pemanggilan url (untuk

mengakses web yang akan dibuat)

Buatlah Direktori pada htdocs dengan nama “pemrograman_web”

Buatlah berkas dengan ekstensi file .php (beri nama “coba.php”)

Lalu ketikan Code berikut:

<h3>Hi, Peserta Workshop</h3>

Atau anda bisa membuat dengan tag html form (menu isian) atau table menu

tampil data dengan tag table (Dibuat contoh oleh Pemateri)

Dan untuk mengaksesnya anda bisa menggunakan seperti berikut:

127.0.0.1/pemrograman_web/coba.php

localhost/pemrograman_web/coba.php

Workshop 11

Page 12: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Penanganan Basis Data

Jika anda ingin membuat situs dinamis yang harus anda buat adalah struktur

basis data.

Untuk pembuatan Basis Data, anda bias menggunakan menu yang telah

disediakan oleh Xampp, yaitu phpmyadmin.

Cara mengaksesnya anda dapat mengetikan url pada browser anda

127.0.0.1/phpmyadmin/

Workshop 12

Page 13: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Tata Cara Pembuatan Basis Data dengan

phpmyadmin

Klik menu SQL

CREATE DATABASE pem_web

Setelah sudah diisikan klik Go

Maka akan tercipta database dengan nama “pem_web”.

Lalu klik database pem_web tersebut dan buatlah query untuk membuat table

mahasiswa.

Workshop 13

Page 14: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Query Pembuatan table mahasiswa:

CREATE TABLE ‘mahasiswa’ (

‘npm’ char(15) NOT NULL,

‘nama’ varchar(50) NOT NULL,

‘kelamin’ enum(‘Laki-Laki’,’Perempuan’) DEFAULT NULL,

‘lahir’ varchar(20) NOT NULL,

‘tgl_lahir’ date DEFAULT NULL,

‘telp’ char(14) NOT NULL,

UNIQUE KEY npm (npm)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Workshop 14

Page 15: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Query Pembuatan table users:

CREATE TABLE ‘users’ (

‘id’ int(5) NOT NULL AUTO_INCREMENT,

‘username’ char(10) NOT NULL,

‘password’ varchar(50) NOT NULL,

PRIMARY KEY (‘id’)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO ‘users’ (‘id’, ‘username’, ‘password’) VALUES (1,’admin’,’admin123’);

Workshop 15

Page 16: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Hasil Query membentuk 2 table mahasiswa dan

table users, bisa anda klik Database pem_web

seperti pada gambar berikut:

Workshop 16

Page 17: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Create Read Update Delete

dengan PHP

Studi Kasus:

Membuat Login, Menambah, mengubah, menghapus dan mencari data.

Workshop 17

Page 18: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Membuat File koneksi.php

Workshop 18

Page 19: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Penjelasan koneksi.php

Pada baris ke 1 dan baris ke 13 merupakan tag pembuka & tag penutup pada php

Pada baris ke 2, ke 3, ke 4 & ke 5 merupakan variable pada php dan yang mempunyai

nilai atau Value dalam tanda petik dua (“”).

Pada baris ke 7 terdapat variable $koneksi dan mempunyai value

new mysqli($servername,$username,$password,$database); merupakan fungsi untuk

menghubungkan ke databse pem_web dengan fungsi dari php new mysqli

Dan perlu anda ketahui variable $koneksi ini nantinya akan digunakan untuk

membuat objek dan fungsi php pada langkah berikutnya (Select, Insert, Update,

Delete).

Workshop 19

Page 20: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Membuat form login.php

Workshop 20

Page 21: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Membuat penanganan cek_login.php

Workshop 21

Page 22: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Otoritas data index.php

Pada baris ke 1 memanggil file koneksi.php

Pada Baris ke 2 ob_start(); merupakan fungsi pada php untuk mengaktifkanoutput buffering atau memory yang digunakan sebagai penyimpanansementara hasil output.

Pada Baris ke 3 session_start(); merupakan fungsi untuk memulai sesi (login) yang diset sebelumnya pada file cek_login.php di baris ke 11 dengan fungsi$_SESSION['username']=$username;

!isset merupakan fungsi php untuk memeriksa variable yang didefinisikanbernilai FALSE dalam kasus ini kita menggunakan struktur kontrol if().

Jika nilai session tidak sesuai akan dialihkan ke file login.php dengan fungsiheader().

Workshop 22

Page 23: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Menampilkan isi data index.php

Workshop 23

Page 24: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Penjelasan Index.php

Pada baris ke 43 merupakan tag PHP dan fungsi dimana terdapat variable $sql

untuk menampung result set query berdasarkan Query “SELECT * FROM

mahasiswa” yang berfungsi untuk menampilkan seluruh field dari table

mahasiswa.

Dan pada baris ke 44 pada variable $result = $koneksi->query($sql) merupakan

hasil dari fungsi php, dan variable $result ini yang nantinya akan ditampilkan

berdasarkan array, maka harus kita gunakan struktur kontrol “foreach”.

Yang nanti ditampilkan berdasarkan nama field dari table mahasiswa dengan

menyisipkan tag HTML table. Bisa terlihat baris ke 49 hingga baris ke 58.

Untuk baris ke 45 kita menggunakan increment atau penambahan secara

otomatis dimana $no=1; jika terdapat data pertama maka akan bernilai 1 dan

berikutnya.

Workshop 24

Page 25: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Penjelasan index.php baris ke 26 hingga

baris ke 28

Bisa terlihat pada gambar <a href=“form.php”> ini merupakan hyperlink atau

rujukan kehalaman lain, dalam kasus tersebut merujuk ke form.php

Baris ke 27 merupakan tag HTML untuk membuat tombol

Workshop 25

Page 26: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Penjelasan index.php baris ke 56 & 57

Dapat dilihat bahwa tag hyperlink merujuk ke file form_ubah.php dan

mengirimkan data dengan value npm yang nantinya aka ditangkap di file

form_ubah.php

Untuk yang hapus.php juga sama seperti diatas kasusnya

Workshop 26

Page 27: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Membuat formulir dan validasi. form.php

Workshop 27

Page 28: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Penjelasan form.php

Label untuk menuliskan judul

Input type=“text” merupakan tag HTML untuk menu isi

Select merupakan menu pilihan

Name=“” placeholder=“” required=“required” ini merupakan atribut html

Name=“” untuk mengirimkan isian data jika tombol simpan diklik

Placeholder=“” merupakan text berbayang

Required=“” merupakan atribut html untuk validasi.

Pada baris ke 14 & baris ke 32 merupakan tag pembuka & tag penutup HTML

form. Dimana atribut action=“” mirip dengan hyperlink.

Workshop 28

Page 29: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Menyimpan data dari formulir, Simpan.php

Workshop 29

Page 30: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Penjelasan simpan.php

Pada baris ke 3 merupakan fungsi dari php try{} catch{} fungsi ini merupakanproses penanganan kesalahan.

Dapat anda lihat dari baris ke 4 hingga baris ke 9 merupakan variable yang dibuatdan fungsi $_POST ini berdasarkan value dari atribut name dari formulir form.phpyang harus disesuaikan dengan value nya.

Pada baris ke 8 fungsi date(‘Y-m-d’) merupakan konversi entri berdasar tahunbulan dan hari, yang diharuskan sebab format dari mysql dengan tipe data date harus dengan format Y-m-d.

Dan untuk strtotime fungsi dari php string ke waktu berdasar atribut name.

Pada baris ke 10 INSERT INTO mahasiswa merupakan query untuk mengisi ke kolomyang ditentukan

VALUES() merupakan nilai yang kita berikan sesuai dengan variable yang kitadeklarasi tadi diatas. ‘”..”’ untuk tanda seperti ini merupakan penghubung ataupenggabungan string dan sering disebut dengan concatenate.

Workshop 30

Page 31: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Menampilkan data yang akan diubah, form_ubah.php

Workshop 31

Page 32: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Penjelasan form_ubah.php

Pada baris ke 3 $npm = $_REQUEST[‘npm’], ini yang kita tangkap dari menu

index.php jika hyperlink ubah kita klik bisa dilihat seperti berikut

<?php echo '<a href="form_ubah.php?npm='.$rows['npm'].'">Ubah</a>'; ?>

Anda bisa menggunakan fungsi php $_REQUEST[] atau $_GET[]

Setelah anda buat kondisi beserta query nya anda bisa menampilkan isi data

tersebut kedalam tag input pada atribut value, dapat terlihat pada gambar.

Dalam formulir proses action kita alihkan ke simpan_ubah.php

Workshop 32

Page 33: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Proses menghapus data

Workshop 33

Proses ini hamper mirip dengan ubah hanya berbeda querynya saja, jika ubahkita harus menampilkan isi data ke atribut value=“” pada tag input.

Karena dalam kasus ini proses menghapus berarti anda langsung melakukanquery DELETE FROM dan value WHERE berdasarkan string npm pada menu index.php

Page 34: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Proses keluar atau mengakhiri sesi logout.php

Terlihat fungsi pada baris ke 3 dimana menggunakan session_destroy(); nah

fungsi ini lah yang dimaksud untuk menghentikan sesi login.

Untuk baris ke 4 kita menampilkan menu notifikasi dengan javascript, dapat

anda lihat fungsi javascript alert(“”) inilah fungsi untuk menampilkan kotak

dialog.

Workshop 34

Page 35: CRUD PHP - blog.herusulistiono.net fileWebsite Dinamis Situs dinamis adalah situs yang mengubah atau menyesuaikan dirinya sendiri secara sering dan otomatis. Halaman dinamis sisi server

Terima Kasih.

Semoga Bermanfaat.

Workshop 35