Modul 7 Praktikum Rekweb

Modul Praktikum Rekayasa Web

 

 

Pertemuan ke-7:

PHP

 

 

 

 

 

 

 

Disusun oleh

Dr. Uung Ungkawa, MT

 

 


Modul 7

PHP

 

Tujuan :

  1. Menunjang mata kuliah Rekayasa Web
  2. Mengetahui, mengenal dan memahami Bahasa Pemrograman Sisi server: PHP

Jenis Praktikum :

  1. Eksplorasi pemrograman web dengan PHP

Persyaratan :

  1. Praktikan harus menyiapkan terminal (Windows) perintah.
  2. Praktikan harus menyiapkan penyunting teks (text editor). Disrankan menggunakan Eclipse, Visual Studio Code, Netbean, Notepad++.
  3. Praktikan harus menyiapkan browser (Chrome, Firefox) dan Server PHP.
  4. Memahami HTML, CSS, Javascript

Perangkat praktikum :

  1. PC / Notebook

Materi

PHP singkatan dari PHP: Hypertext Preprocessor, yang merupakan bahasa scripting untuk pemrograman web sisi server, karena dieksekusi di server. PHP sudah sangat luas digunakan dan merupakan sumber terbuka sehingga bebas diunduh dan digunakan. PHP ini bahasa yang populer dan menakjubkan:

Cukup tangguh untuk menjadi inti dari sistem blog terbesar (Wordpress).

Cukup jauh (sampai ke akar-akarnya) menjalankan jejaring sosial terbesar (Facebook).

Cukup mudah untuk menjadi bahasa sisi server pertama bagi pemula.

File PHP

File PHP boleh mengandung teks, HTML, CSS, Javascript, dan kode PHP. Kode PHP ini dieksekusi di server tetapi hasilnya dikirim ke browser sebagai HTML biasa. File PHP memeliki ekstensi .php.

Yang bisa PHP lakukan

Dengan PHP kita dapat melakukan banyak hal:

Membangkitkan isi halaman web dinamik

Membuat, membuka, membaca, menulis, menghapus dan menutup file di server.

mengumpulkan data form

Mengirim dan menerima cookies

Menambah, menghapus, mengubah data di basis data

Digunakan untuk mengatur akses pengguna

Untuk mengenkrip data

Untuk menghasilkan HTML, gambar, teks, XHTML, XML, file pdf, bahkan Flash movie.

Mengapa PHP

Ada banyak alasan untuk memilih PHP:

PHP bisa jalan di berbagao platform: Windows, Linux, Unix, Mac OS X, dsb.

Kompatibel dengan semua server yang dipakai hari ini: Apache, IIS, dan lainnya.

Mendukung berbagai basisdata.

Gratis, bisa diunduh di sumber resmi PHP: www.php.net.

Mudah dipelajari dan bisa jalan dengan efisien di sisi server.

Yang baru di PHP 7

Versi terakhir PHP adalah versi 7 yang memiliki kelebihan:

Lebih cepat dibanding versi yang populer (PHP 5.6)

Meningkatkan penanganan error

Mendukung deklarasi jenis yang lebih ketat untuk parameter fungsi.

Mendukung operator baru (seperti operator spaceship <=>)

Instalasi PHP

Dalam praktikum ini praktikan harus menginstall server PHP:

Unduh perangkat lunak server PHP dan basis data seperti XAMPP, LAMPP, WAMP, Laragon, atau yang lainnya.

Install di komputer praktikan

Aktifkan server, maka komputer akan berfungsi sebagai server dan masih bisa sebagai klien.

Membuat File PHP

Untuk membuat file PHP, bisa digunakan penyunting teks atau lingkungan pengembang web. Banyak pengembang web yang gratis seperti Eclipse, VS Code. Skrip PHP bisa ditulis di mana saja dalam dokumen (file). Skrip PHP dalam file diawali dengan <?php dan diakhiri dengan ?>:

<!DOCTYPE html>

<html>

<body>

 

<?php

//kode php ditulis di sini

?>

</body>

</html>

Ekstensi default file PHP adalah .php. Biasanya file PHP mengandung tag-tag HTML dan beberap kode script PHP.

Sensitifitas Kasus

Di PHP, kata kunci seperti if, else, while, echo dan lainnya, juga kelas, fungsi dan fungsi yang dibuat pengguna tidak peka kasus, huruf besar sama dengan huruf kecil. Akan tetapi, nama variabel bersifat peka kasus.

Komentar

Seperti pada bahasa lain, komentar di PHP tidak dieksekusi. Hanya untuk catatan pembaca dan pengguna yang mengembangkan program, supaya memahami kode, atau catatan untuk pengingat. Ini penting karena seringkali kita sebagai pembuat akan sering kembali memahami program yang telah kita buat. Untuk itu sebaiknya nama variabel atau fungsi perlu diberi komentar arti, maksud dibuat variabel atau fungsi tersebut. Komentar dalam PHP bisa dengan // dan # untuk komentar baris dan untuk beberapa baris, komentar dibatasi /* dan */.

<!DOCTYPE html>

<html>

<body>

 

<?php

// This is a single-line comment

 

# This is also a single-line comment

?>

</body>

</html>

Variabel

Variabel adalah wadah untuk menyimpan data/informasi. Dalam PHP variabel diawali tanda $ dan diikuti namanya. Dalam PHP, variabel tidak perlu dideklarasikan terlebih dahulu. Deklarasi langsung tejadi ketika diberi nilai. Nama variabel harus dimulai huruf atau garis bawah dan tidak boleh diawali angka. Nama variabel hanya boleh mengandung alfanumerik (huruf dan angka, A-z dan 0-9 dan _). Varibel PHP bersifat peka kasus.

Variabel Output

Statemen echo digunakan untuk mengeluarkan data ke layar. Ada perbedaan tanda petik ganda dengan tanda petik tunggal terhadap variabel:

<?php

$u = "Itenas";

echo "Hello $u ".'Hello $u';

?>

Akan menghasilkan

Hello Itenas Hello $u

PHP Bahasa Longgar Jenis

Yang dimaksud bahasa longgar jenis adalah bahwa dalam PHP tidak perlu menentukan jenis data pada suatu variabel. PHP akan menentukan jenis variabel secara otomatis tergantung nilainya. Karena jenis data tidak ditentukan dengan ketat, kita dapat melakukan penjumlahan string dengan integer tanpa error. Di PHP 7 ditambahkan deklarasi jenis. Ini memberi pilihan untuk menentukan jenis data yang bisa diterima ketika mendeklarasikan fungsi dan dengan memungkinkan ketentuan jenis yang ketat yang akan menghasilkan eror fatal jika terjadi ketidaksesuaian jenis.

Skup (Cakupan) Variabel

Dalam PHP, variabel dapat dideklarasikan di mana saja di salam script (kode). Cakupan di mana variabel itu dikenal, adalah daerah/bagian di dalam script di mana variabel itu dapat diacu (dipakai). PHP memiliki tiga cakupan variabel berbeda:

lokal

global

statik

Skup Global dan Lokal

Variabel yang dideklarasikan di luar fungsi memiliki skup global dan hanya bisa diakses di luar fungsi. Kode berikut menghasilkan error karena variabel $x di dalam fungsi myFunc() tidak terdefinisi (undefined).

<?php

$x = 5; // global scope

 

function myFunc() {

// Muncul error Undefined variable

echo "<p>Variable x inside function is: $x</p>";

}

myFunc();

 

echo "<p>Variable x outside function is: $x</p>";

?>

Sebaliknya, variabel yang dideklarasikan di dalam fungsi memiliki skup lokal dan hanya bisa diakses di dalam fungsi saja.

<?php

function myFunc() {

$x = 5; // local scope

echo "<p>Variable x inside function is: $x</p>";

}

myFunc();

 

// Muncul error Undefined variable

echo "<p>Variable x outside function is: $x</p>";

?>

Dengan demikian, kita bisa memiliki nama variabel yang sama di beberapa fungsi tetapi memiliki skup lokal masing-masing. Ini karena variabel lokal hanya dikenal secara lokal di dalam fungsi.Lalu bagaimana jika kita ingin mengakses variabel global di dalam fungsi? PHP menggunakan kata kunci global untuk mengakses variabel global di dalam fungsi:

<?php

$x = 5;

$y = 10;

 

function myFunc() {

global $x, $y;

$y = $x + $y;

}

 

myFunc(); // eksekusi fungsi

echo $y; // menampilkan nilai baru isi variabel $y

?>

PHP juga menyimpan semua variabel global di dalam larik $GLOBALS[index] di mana index merupakan nama variabelnya (dalam tanda petik). Larik ini juga dapat diakses dari dalam fungsi dan dapat digunakan untuk mengubah variabel global secara langsung. Contoh di atas dapat ditulis ulang sebagai:

<?php

$x = 5;

$y = 10;

 

function myFunc() {

$GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];

}

 

myFunc(); // eksekusi fungsi

echo $y; // menampilkan nilai baru isi variabel $y

?>

Superglobals

Variabel superglobal adalah variabel bawaan yang selalu ada di semua skup. Beberapa variabel sudah didefinisikan oleh PHP dan bersifat superglobal yang berarti selalu bisa diakses di mana pun bahkan dapat diakses dari dalam fungsi, kelas atau file. Beberapa variabel superglobal PHP adalah:

$GLOBALS

$_SERVER

$_REQUEST

$_POST

$_GET

$_FILES

$_ENV

$_COOKIE

$_SESSION

 

 

Variabel Statik

Pada dasarnya, biasanya, jika suatu fungsi sudah selesai diensekusi, semua variabelnya dihapus. Akan tetapi kadang kita ingin variabel di dalam fungsi (lokal) tidak dihapus misalnya karena ingin dipakai lagi datanya di pekerjaan (eksekusi) berikutnya. Untuk ini kita dapat menggunakan kata kunci static ketika pertama kali mendefinisikan variabel:

<?php

function myFunc() {

static $x = 0;

echo $x;

$x++;

}

 

myFunc ();

echo "<br>";

myFunc ();

echo "<br>";

myFunc ();

?>

Kode di atas memanggil fungsi tiga kali. Setiap kali fungsi selesai dieksekusi, nilai $x bertambah satu sehingga pada pemanggilan berikutnya, $x bernilai baru. Keluarannya menjadi:

0

1

2

Nilai $x tetap disimpan setelah eksekusi sehingga hasilnya selalu nilai terakhir. Jika bukan statik, tidak menggunakan kata kunci static, keluarannya selalu 0 karena pada saat deklarasi dibuat variabel baru. Silakan dicoba. Namun variabel ini tetap bersifat lokal di dalam fungsi tersebut.

Keluaran

Di dalam PHP ada dua cara mendasar untuk keluaran: echo dan print. Kedua perintah ini hampir sama kecuali:

print seperti fungsi yang mengembalikan nilai 1.

print hanya bisa satu argumen (beberapa argumen disambung dengan titik) sedangkan echo bisa beberapa argumen (yang dihubungkan dengan koma).

echo sedikit lebih cepat dari print

Sebagai contoh, perhatikan kode berikut:

<?php

$txt1 = "Learn PHP";

$txt2 = "W3Schools.com";

$x = 5;

$y = 4;

 

print "<h2>" . $txt1 . "</h2>";

echo "Study PHP at " , $txt2 , "<br>"; //tidak bisa pakai print karena print hanya bisa 1 argumen

print "Study PHP at " . $txt2 . "<br>"; // bisa pakai print karena dengan dot menjadi 1 argumen

$a=print $x + $y; //tidak bisa pakai echo karena echo bukan fungsi yang memberikan nilai

echo '<br>', $a;

?>

 

 

 

Menangani Form

Variabel superglobal $_GET dan $_POST digunakan untuk mengumpulkan data form.

 

Validasi Form

 

Cookies

 

Sessions

 

Latihan

Eksplorasi PHP

Siapkan browser Chrome atau Firefox

Install XAMPP atau Laragon

Siapkan penyunting teks (text editor) seperti Eclipse, VS Code, Netbean, Notepad++ atau yang lainnya.

Buat file index.php dengan isi

<?php

echo “Hello Itenas”;

?>

Buatkan folder Latihan1 di folder htdocs (untuk XAMPP) atau di folder www (Laragon).

Simpan file index.php di folder Latihan1.

Jalankan server Apache di XAMPP atau di Laragon.

Buka browser, ketik di address bar: localhost/latihan1

Perhatikan apa yang terjadi

Ubah-ubah isi file index.php untuk mengeksplorasi PHP.

Catatan: index.php adalah file default yang dieksekusi jika nama file tidak disebutkan. Jika ingin mengakses file abcd.php di folder lat1, ketik di browser localhost/lat1/abcd.php.

Catatan 2: Awas tanda petik di Word tidak kompatibel dengan tanda petik di Notepad++. Ketik ulang tanda petik dari Word ke Notepad++ untuk membuat file php. Error di tanda petik.

Tugas Akhir

  • Menangani form dengan PHP:

Buatkan form yang mengandung isian (fields) nama, nrp, no kontak, email dan alamat.

Buatkan cara untuk validasi: nama: wajib diisi dan tidak boleh mengandung angka

Isian nrp hanya angka dan tanda minus (-) seperti 15-2003-001

Isian no kontak: harus angka dan boleh dipisah dengan spasi, tanda minus dan boleh diawali tanda plus.

Alamat email harus berformat: unyil@gmail.com atau unyil@gmail.co.id.

Proses form dan tampilkan data dari isian form tersebut.

  • Implementasikan cookies dengan PHP:

Buatkan satu halaman web yang meminta nama dan nrp mahasiswa.

Simpan data tadi di dalam cookie

Tampilkan data di suatu div di halaman web tersebut.

Coba dengan browser Chrome. Perhatikan apakah aplikasi anda benar menampilkan data yang dimasukkan?

Tutup browser yang anda gunakan, kemudian buka lagi browser dan kunjungi lagi halaman tadi yang menyimpan data di cookies. Apakah data masih ada?

Tutup lagi browser dan gunakan browser Firefox untuk mengunjungi halaman yang sama. Adakah data tadi?

  • Implementasi Sessions dengan PHP

Buatkan satu halaman utama (home) yang memiliki beberapa link untuk mengakses halaman lain.

Buatkan dua level: Dari home ke halaman level 1 dan dari halaman level 1 ke level 2.

Di halaman utama, pengguna diminta untuk login dan setelah login menu link ke halaman level 1 muncul, juga menampilkan nama pengguna.

Di halaman level 1 dan level 2, juga ditampilkan nama pengguna melalui sessions dari halaman utama.

Coba klik link ke halaman level 1. Apakah nama pengguna ada?

Klik juga ke halaman level 2, perhatikan adakah nama pengguna?


Last modified: Sunday, 22 November 2020, 10:13 PM