Anda di halaman 1dari 25

Web Programming– PHP

PHP Hypertext Preprocessor

Pemrograman Web, Sunday, March 14, 2021


Teknik Informatika, Universitas Islam Indonesia

Hari Setiaji
Sekilas
• Bahasa pemrograman script di sisi server (server-side scripting)
• Berupa script yang disisipkan di dalam dokumen HTML,
embedded script yang diinterpretasi (bukan di-compile)
• Dibuat pertama kali oleh Rasmus Lerdorf
• PHP singkatan dari:
• Personal Home Page (awalnya)
• Professional Home Page (kemudian)
• PHP: Hypertext Preprocessor (resminya)
• Official Website : http://www.php.net
• PHP versi terakhir : 5.x
• Free & opensource
• Multi platform: Windows, Linux, Mac
• Menyediakan Library/API yang menyeluruh:
Database : MySQL, Oracle, postgreSQL, IBM DB2, ODBC, dll
Protocol : HTTP, FTP, POP3, IMAP, LDAP, SNMP, dll
Output : HTML, XML, JPEG, GIF, PNG, PDF, SWF
dll
Pemrograman Web – Hari Setiaji
Alur Kerja PHP

Pemrograman Web – Hari Setiaji


Contoh Penyisipan Script PHP
PHP
<?php
/* Cara II: script PHP
dideklarasikan di sini*/
echo "halo 2<br>"; HTML
<html>
<html>
?>
halo
halo 1<br>
1<br>
halo
halo 2<br>
2<br>
halo
halo 3</html>
3</html>

Browser

Pemrograman Web – Hari Setiaji


Variabel & Konstanta
 case sensitive
 variable dengan prefiks: $
 variable tidak perlu dideklarasi
 variable scope:
 local (default)
 global, dengan menyebutkan: global $namavar;
 Static, dengan menyebutkan: static $namavar;
 Predefined variables (didefinisikan oleh web server), berupa variabel Array
 Server variables: $_SERVER
 Environment variables: $_ENV
 Cookie: $_COOKIE
 Request parameter: $_GET, $_POST, $_FILES
 konstanta
 Pendefinisian: define("pi", 3.14);
 Konstanta terdefinisi, contoh:
 PHP_VERSION (versi PHP),
 __FILE__ (nama file yang sedang dijalankan),
 __LINE__ (nomor baris program yang sedang dijalankan), dll
Pemrograman Web – Hari Setiaji
Operator
 Assignment: =, +=, -=, *=, /=, %= ($a += 1 artinya $a =
$a + 1)
 Aritmatika: +, -, *, /, %
 Operator pre/post increment/decrement: ++$a, --$a, $b++,
$b--
 Perbandingan: == (equal), === (identical, sama nilai dan
sama tipe), !=, >, <, >=, <=
 Operator logika: && (and), || (or), ! (not)
 Operator kondisi: ?
$jenis = ($bil % 2 == 0 ? ”Genap” : ”Ganjil”);
 Operator string: . (concat)
 Operator new (untuk object): new

Pemrograman Web – Hari Setiaji


Examples
<?php
echo "<h3>Postincrement</h3>"; PHP
$a = 5;
echo "Should be 5: " . $a++ . "<br />\n";
echo "Should be 6: " . $a . "<br />\n";

echo "<h3>Preincrement</h3>";
$a = 5;
echo "Should be 6: " . ++$a . "<br />\n";
echo "Should be 6: " . $a . "<br />\n"; Browser

echo "<h3>Postdecrement</h3>";
$a = 5;
echo "Should be 5: " . $a-- . "<br />\n";
echo "Should be 4: " . $a . "<br />\n";

echo "<h3>Predecrement</h3>";
$a = 5;
echo "Should be 4: " . --$a . "<br />\n";
echo "Should be 4: " . $a . "<br />\n";
?>
Pemrograman Web – Hari Setiaji
Examples
<?php
PHP
$a=5;
$b="5"; Browser
$hasil = $a==$b;
echo "$hasil <br />";

$a=5;
$c=5;
$hasil = $a===$c;
echo "$hasil <br />";

$jenis = ($a % 2 == 0 ? Genap :


Ganjil);
echo $a." adalah bilangan
$jenis";
?>
Pemrograman Web – Hari Setiaji
Konstruksi dasar program PHP
 Pemilihan
 if
 if .. else,
 If.. else if ..else
 switch .. case, break
 Pengulangan
 while
 do .. while
 For
 foreach (iterasi setiap elemen array)
 Pencabangan
 break (keluar dari loop)
 continue (loncat ke iterasi loop berikutnya)

Pemrograman Web – Hari Setiaji


Examples
<?php
// Konstruksi If PHP
$bulan=date("m");
if ($bulan==4)
echo "Bulan April";
// Konstruksi If .. Else
echo "<br />";
Browser
$today=date("w");
if ($today==1)
echo "Hari Senin";
else
echo "Bukan Hari Senin ";

// Konstruksi If .. Elseif.. Else


echo "<br />";
$today=date("w");
if ($today==1)
echo "Hari Senin";
elseif ($today==2)
echo "Hari Selasa";
else
echo "Bukan Hari Senin atau hari selasa Pemrograman Web – Hari Setiaji

";
?>
Examples
<?php
$today=date("l");
switch ($today) {
case "Sunday" :
echo "Hari Minggu";
break;
case "Monday" : PHP
echo "Hari Senin";
break;
case "Tuesday" :
echo "Hari Selasa";
break;
case "Wednesday" :
echo "Hari Rabu";
break;
default :
echo "Hari Sabtu";
}
?>

Pemrograman Web – Hari Setiaji


Examples
Hasil While <br />
<?php
$bilangan =1; PHP
while ($bilangan <= 25) {
echo $bilangan." ";
$bilangan++;
}
echo "<br /><br />";
?>
Hasil Do..While <br />
<?php
$a=10;
do {
echo $a." ";
$a--;
}
while ($a > 5);
?>
<br /><br /><b>Hasil For</b> <br /> Browser
<?php
for ($i=1;$i<=6;$i++) {
echo "<h".$i.">Header $i </h".$i.">"; Pemrograman Web – Hari Setiaji
}
?>
Examples
PHP

<b>Penggunaan Continue</b>
<br />
<?php
for ($i=1;$i<=15;$i++) {
if ($i >5 && $i<=11) Browser
continue;

echo $i."<br /> ";


}
?>

Pemrograman Web – Hari Setiaji


Array
 Array adalah himpunan nilai yang elemennya dapat diacu
berdasarkan indeks (angka) atau nama (string)
 Indeks Array (jika menggunakan angka) dimulai dari 0, meskipun
tidak harus
 Pembuatan Array :
1. Nama_array = new Array();
2. Nama_array[]=nilai_1;
Nama_array[]=nilai_2;
;
Nama_array[]=nilai_n;

Pemrograman Web – Hari Setiaji


<?php
//Pembuatan Array cara I
$mahasiswa = array
("Dani","Andini","Sheila","Rudi");
PHP Examples
//Pembuatan Array cara II
$mahasiswa[] = "Dani";
$mahasiswa[] = "Andini";
$mahasiswa[] = "Sheila";
$mahasiswa[] = "Rudi";
Browser

//Pembuatan Array dengan indeks yang tidak


terurut
$musik=array
("Jazz",5=>"Blues","Rock",10=>"Dankdut");

//Pengaksesan Array mahasiswa


echo "Elemen Array mahasiswa pertama adalah :
$mahasiswa[0] <br />";
echo "Elemen Array mahasiswa ketiga adalah :
$mahasiswa[2] <br />";

//Pengaksesan Array musik


echo "Elemen Array musik pertama adalah :
$musik[0] <br />";
echo "Elemen Array musik ketiga adalah :
$musik[6] <br />";
echo "Elemen Array musik keempat adalah :
$musik[10] <br />"; Pemrograman Web – Hari Setiaji

?>
Examples
PHP
<?php
//Pembuatan Array dengan indeks string Browser
$hari=array ("Sunday"=>"Minggu",
"Monday"=>"Senin",
"Tuesday"=>"Selasa",
"Wednesday"=>"Rabu",
"Thursday"=>"Kamis",
"Friday"=>"Jumat",
"Saturday"=>"Sabtu"
);

echo "jumlah elemen Array :


".count($hari)."<br />";
$hari_inggris=date("l");
echo "Hari ini adalah hari
$hari[$hari_inggris]";
?>

Pemrograman Web – Hari Setiaji


Examples
<?php
PHP
//Array Multidimensi

$peserta = array (
"PHP" => array("Anto","Dani","Rendra","Lani"),
"MySQL" => array("Bayu","Lina","Diana","Rinto"),
"Delphi" => array("Doni","Dini","Ela","Aryo"),
"JSP" => array("Fia","Rina","Roni","Dian"));

//Pengaksesan dengan While


while (list($indeks_1, $nilai_1) = each($peserta)) {
echo "<b>Peserta $indeks_1 </b>: <br />\n";
$nomor=1;
while (list($indeks_2,$nilai_2) = each($nilai_1))
{
echo $nomor.".".$nilai_2."<br />\n";
$nomor++;
}
}
Browser

Pemrograman Web – Hari Setiaji


Examples
<?php
PHP
//Array Multidimensi

$peserta = array (
"PHP" => array("Anto","Dani","Rendra","Lani"),
"MySQL" => array("Bayu","Lina","Diana","Rinto"),
"Delphi" => array("Doni","Dini","Ela","Aryo"),
"JSP" => array("Fia","Rina","Roni","Dian"));

//Pengaksesan dengan Foreach


foreach ($peserta as $indeks_1 => $nilai_1) {
echo “<b>Peserta $indeks_1 </b>: <br />\n";
$nomor=1;
foreach ($nilai_1 as $indeks_2 => $nilai_2) {
echo $nomor.".".$nilai_2."<br />\n";
$nomor++;
}
}

?> Browser
Pemrograman Web – Hari Setiaji
PHP pada pemrograman web
 Alternatif Sumber Data Input

 Parameter URL: $_GET


 Form handling: $_GET, $_POST, $_FILES
 Cookie: $_COOKIE
 Session: session_start(), $_SESSION
 File: fopen(), fread(), fclose(), readfile(),
file_get_contents()
 Database: connect, select_db, query, fetch, close

Pemrograman Web – Hari Setiaji


PHP pada pemrograman web
 Alternatif Output
 Image (ke browser): fpassthru(), imagejpeg(), imagegif(),
imagepng()
 Dengan cara meng-output-kan isi file image, atau create image
from scratch
 File: fopen(), fwrite(), fclose()
 Cookie: setcookie()
 Session: session_start(), $_SESSION
 Database: connect, select_db, query, fetch, close

 Proses
 Script PHP dieksekusi ketika file dokumen web di-request oleh
browser
 Atau dipanggil oleh aplikasi/script lain sebagai command pada OS
shell

Pemrograman Web – Hari Setiaji


Input dari Parameter URL
 Dapat digunakan untuk mengetahui link mana yang di-klik
oleh user
 Sebuah link dapat mewakili data dan/atau aksi
<html>
<html> HTML Browser
1.
1. Jaket
Jaket <a<a href='go.php?id=1&act=edit'>Edit</a>
href='go.php?id=1&act=edit'>Edit</a>
<a
<a href='go.php?
href='go.php?
id=1&act=delete'>Delete</a><br>
id=1&act=delete'>Delete</a><br>
2.
2. Sepatu
Sepatu <a <a href='go.php?id=2&act=edit'>Edit</a>
href='go.php?id=2&act=edit'>Edit</a>
<a
<a href='go.php?id=2&act=delete'>Delete</a>
href='go.php?id=2&act=delete'>Delete</a>
</html>
</html>
PHP: go.php
<?
$aksi = $_GET["act"];
$id = $_GET["id"];
if ($aksi == "edit") {
//lakukan edit terhadap data dengan ID = $id
}
else if ($aksi == "Delete") {
//lakukan delete terhadap data dengan ID = $id
}
?>
Input dari Form HTML
 Dapat digunakan untuk mendapatkan data yang dimasukkan
oleh user
HTML
<html>
<html>
<form
<form action='save.php'
action='save.php' method='POST'>
method='POST'> Browser
Nama<br>
Nama<br>
<input
<input type='text'
type='text' name='nama'><br>
name='nama'><br>
Jenis<br>
Jenis<br>
<input
<input type='radio'
type='radio' name='jenis'
name='jenis' value='L'>Laki-
value='L'>Laki-
laki<br>
laki<br>
<input
<input type='radio'
type='radio' name='jenis'
name='jenis'
value='P'>Perempuan<br>
value='P'>Perempuan<br>
<input
<input type='submit'
type='submit' value='Simpan'>
value='Simpan'>
</form>
</form>
</html>
</html>
PHP: save.php
<?
$nama = $_POST["nama"]; //berisi string nama
$jenis = $_POST["jenis"]; //berisi "L" atau "P"

//simpan data $nama dan $jenis


?>
Input dari Cookie
 Dapat digunakan untuk mendapatkan data yang
dimasukkan oleh user pada halaman sebelumnya
HTML:
<html>
<html> login.html
PHP: login.php
<form
<form action='login.php'
action='login.php' <?
method='POST'>
method='POST'> $user = $_POST["user"]; //berisi string
User username
User <input
<input type='text'
type='text'
name='user'><br>
name='user'><br> $pass = $_POST["pass"]; //berisi string
Password password
Password <input
<input type=‘password'
type=‘password'
name='pass'><br>
name='pass'><br>
<input if ( )) {
<input type='submit'
type='submit' value='Login'>
value='Login'>
</form> //simpan $user di cookie
</form>
</html> setcookie("login", $user);
</html>
}
?> PHP: anypage.php
Browser <?
$user = $_COOKIE["login"]; //berisi string username
if ($user == "") { //belum melakukan login
header("Location: login.html"); //redirect ke halaman login
}
else {
// User sudah login, boleh melakukan sesuatu
}
?>
Input dari Session
 Dapat digunakan untuk mendapatkan data yang
dimasukkan oleh user pada halaman sebelumnya
<html>
<html> HTML: PHP: login.php
<form
<form action=‘anypage.php'
action=‘anypage.php' login.html <?
method='POST'>
method='POST'> $user = $_POST["user"]; //berisi string username
User $pass = $_POST["pass"]; //berisi string password
User <input
<input type='text'
type='text'
name='user'><br>
name='user'><br> if (cekPass($user, $pass)) {
Password
Password <input
<input type='text'
type='text' //simpan $user di session
name='pass'><br>
name='pass'><br> session_start();
<input
<input type='submit'
type='submit' value='Login'>
value='Login'> $_SESSION["login"] = $user;
</form>
</form> }
</html> ?>
</html>
<?
Browser Include (“login.php”);
$user = $_SESSION["login"]; //berisi string username
if ($user == "") { //belum melakukan login
header("Location: login.html"); //redirect ke halaman login
}
else {
// User sudah login, boleh melakukan sesuatu
}
?>
PHP: anypage.php
Finally

?
Any Question

Pemrograman Web – Hari Setiaji

Anda mungkin juga menyukai