web programming

59
masaboe Web Programming

Upload: bertha-mcneil

Post on 02-Jan-2016

164 views

Category:

Documents


6 download

DESCRIPTION

Web Programming. masaboe. Arsitektur Client Server. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Web Programming

masaboe

Web Programming

Page 2: Web Programming

Arsitektur Client Server Aplikasi web adalah jenis aplikasi yang

menggunakan arsitektur client-server. Pada jenis arsitektur ini, sebuah program client terhubung pada sebuah server untuk informasi yang dibutuhkan untuk melengkapi tugas-tugas yang telah diset oleh user.

Page 3: Web Programming

Web client Tugas browser adalah menyediakan user sebuah

interface dimana akan meminta server dan menampilkan respon dari server.

Ketika user meminta server (sebagai contoh, mendapatkan dokumen, atau mungkin mengirim (submit) sebuah form), browserlah yang memformat permintaan tersebut ke dalam sesuatu yang server dapat mengerti. Begitu server telah selesai memproses permintaan dan kemudian mengirim respon, browser mengambil data yang diperlukan dari respon yang diberikan server dan kemudian merendernya untuk ditampilkan ke user.

Page 4: Web Programming

HTTP ProtocolSalah satu yang paling terkenal dan

populer protokol di web adalah HyperText  Transfer Protocol (HTTP). Hypertext dokumen berisi link yang menghubungkan ke dokumen lain atau file. Pengguna dapat mengaktifkan link (melalui klik tombol mouse, misalnya) dan target  dokumen kemudian akan ditransfer ke mesin klien dan jika itu adalah halaman web, akan ditampilkan dalam browser. 

Page 5: Web Programming

Konsep Pemrograman Web Pemrograman web: membuat aplikasi berbasis web Aplikasi berbasis web: Aplikasi yang dibuat dengan

memanfaatkan mekanisme dan aplikasi yang sudah ada pada sistem web (WWW)

Sistem web sebenarnya merupakan aplikasi yang:• Berarsitektur client-server Software web browser di sisi client Software web server di sisi server• Menggunakan protokol HTTP dalam komunikasi

antara client dan server• Mempunyai fungsi utk mengambil/menjalankan isi

file dokumen web di server &menampilkannya di sisi client

Page 6: Web Programming

Membuat aplikasi berbasis web berarti:• Memperkaya fungsi web server dengan cara

menambahkan program pada dokumen web yang akan dieksekusi oleh server ketika file dokumen web tersebut diakses oleh web server

Misalnya, program yang mengambil data ke basis data untuk ditampilkan ke web browser

• Memperkaya interaktivitas dokumen dengan cara menambahkan program pada dokumen web yang akan dieksekusi oleh web browser ketika file dokumen tersebut ditampilkan oleh web browser

Misalnya, program yang memvalidasi data masukan pada form sebelum disubmit ke web server

Page 7: Web Programming

Yang perlu dipelajari untuk membuat aplikasi berbasis web Di sisi client: Sintaks pembuatan dokumen web (HTML & CSS) Client side scripting (JavaScript) •Di sisi server Mekanisme pemanggilan program dan

pengambilan output program oleh web server (CGI) Server side scripting (PHP, JSP, ASP, dll. Untuk

contoh: PHP) Penghubung Sintaks pengalamatan dokumen web (URL) Protokol komunikasi (HTTP)

Page 8: Web Programming

Mekanisme CGI (Common Gateway Interface) Jika dokumen web yang diminta oleh web browser

merupakan file program atau file HTML yang disisipi program, maka web server akan menjalankan (run) file tersebut dengan bantuan interpreter atau sistem operasi

Informasi yang diberikan oleh web server kepada program: Server variables : berbagai informasi yang ada pada

HTTP requestyang sedang diterima, nama dan path file program, kapabilitas web server, dll

Environment variables : informasi yang telah diset (mungkin oleh aplikasi lain) pada lingkungan sistem operasi

Cookie : isi cookie yang disimpan di web browser Request parameter : input dari user yang dikirimkan

bersamaan dengan HTTP requestoleh web browser Hasil output program ke standard output(screen) akan

diambil oleh web server untuk dikirimkan kepada web browser sebagai HTTP response

Page 9: Web Programming

Informasi yang diberikan oleh web server kepada program

Server variables : berbagai informasi yang ada pada HTTP requestyang sedang diterima, nama dan path file program, kapabilitas web server, dll

Environment variables : informasi yang telah diset (mungkin oleh aplikasi lain) pada lingkungan sistem operasi

Cookie : isi cookie yang disimpan di web browser

Request parameter : input dari user yang dikirimkan bersamaan dengan HTTP requestoleh web browser

Page 10: Web Programming

Server variablesdiletakkan pada predefined variable $_SERVER •$_SERVER[“PHP_SELF”] = path dan nama file

yang sedang dieksekusi •$_SERVER[“SERVER_NAME”] = nama

host/server •$_SERVER[“REQUEST_METHOD”] = jenis

metode request •$_SERVER[“HTTP_USER_AGENT”] = identitas

web browser yang melakukan request •$_SERVER[“REMOTE_ADDR”] = nomor IP user •dll

Page 11: Web Programming

Environment variablesdiletakkan pada predefined variable $_ENVContoh$_ENV[“HOSTNAME”]$_ENV[“COMPUTERNAME”]

Page 12: Web Programming

Cookieisi cookie yang disimpan di web browsersetcookie(name, value, expire, path,

domain);Contoh :<?php

$expire=time()+60*60*24*30;setcookie("user", "Alex Porter", $expire);?>

Page 13: Web Programming

Request parameterinput dari user yang dikirimkan bersamaan

dengan HTTP request oleh web browser, Request parameter diletakkan pada predefined variable

Contoh : $_GET, $_POST, $_FILES.

Page 14: Web Programming

Konsep “task” dalam aplikasi berbasis webAplikasi mempunyai sejumlah

fitur/fungsi yang memungkinkan user untuk melakukan sejumlah task

Untuk memenuhi suatu task, dapat digunakan satu atau lebih halaman web sebagai antarmuka

Contoh task yang menggunakan satu halaman web:

Membaca artikel nomor tertentuMenambahkan entry baru pada

guest book

Page 15: Web Programming

Contoh task yang menggunakan lebih dari satu halaman web:

Membeli barang secara online• halaman 1: menampilkan daftar barang yang ada untuk dipilih• halaman 2: mengisi alamat pengiriman• halaman 3: menampilkan informasi transaksi yang baru saja

dilakukan

Antara halaman web yang satu dengan yang lain harus ada komunikasi mengenai statedari task (misalnya, halaman 3 butuh informasi mengenai barang yang telah dipilih pada halaman 1)

Page 16: Web Programming

Stateless HTTP

Page 17: Web Programming

Message Passing via URL

Page 18: Web Programming

Message Passing via Form

Page 19: Web Programming

Cookie

Page 20: Web Programming

Session

Page 21: Web Programming

PHPPHP adalah bahasa scripting yang menyatu dengan

HTML dan dijalankan pada server side. Artinya semua sintaks yang kita berikan akan sepenuhnya dijalankan pada server sedangkan yang dikirimkan ke browser hanya hasilnya saja.

PHP, 'PHP: Hypertext Preprocessor', merupakan bahasa pemrograman web dinamis layaknya ASP, JSP, Perl dan sebagainya. Lalu mengapa harus menggunakan bahasa pemrograman, apa HTML saja tidak cukup ? Ya, tentu saja HTML tidak cukup, salah satunya adalah karena sifat HTML yang statis. HTML hanya berguna untuk desain, saat kita browsing, maka yang kita lihat itu sebenarnya adalah interprestasi dari HTML. Sebagai contoh saat kita menggunakan YahooMail untuk mengirim email, maka tampilan yang dapat kita lihat tersebut merupakan interprestasi dari HTML, sedangkan untuk dapat mengirim email, digunakan bahasa pemrograman web seperti PHP.

Page 22: Web Programming

Variabel PHPDalam PHP setiap nama variable diawali tanda

dollar ($). Misalnya nama variable a dalam PHP ditulis dengan $a. Jenis suatu variable ditentukan pada saat jalannya program dan tergantung pada konteks yang digunakan.

Contoh<?php$a=”5”;$b=”2”;$hasil=$a+$b;echo($hasil);?>

Page 23: Web Programming

STRUKTUR KONTROL IFif (syarat){statement}

atauif (syarat){statement}else{statement lain}

Page 24: Web Programming

atau:if (syarat pertama){statement pertama}elseif (syarat kedua){statement kedua} else{statement lain}

Page 25: Web Programming

Contoh IF<?php$a=4;$b=9;if ($a>$b){echo(“a lebih besar dari pada b”);}elseif ($a<$b){echo(“a lebih kecil b”);}else{echo(“a sama dengan b”);} ?>

Page 26: Web Programming

WHILEBentuk dasar dari statement While adalah

sebagai berikut:while (syarat){statement}Contoh :<?php$a=1;while ($a<10){echo($a);$a++; }?>

Page 27: Web Programming

FORCara penulisan statement FOR adalah

sebagai berikut:for (ekspresi1; ekspresi2 ; ekspresi3)Statementekspresi1 menunjukkan nilai awal untuk

suatu variableekspresi2 menunjukkan syarat yang harus

terpenuhi untuk menjalankan statemantekspresi3 menunjukkan pertambahan nilai

untuk suatu variable

Page 28: Web Programming

Contoh<?phpfor ($a=0;$a<10;$a++){echo(“Nilai A = ”);echo(“$a”);echo(“<br>”);}?>

Page 29: Web Programming

SWITCHStatement SWITCH digunakan untuk

membandingkan suatu variable dengan beberapa nilai serta menjalankan statement tertentu jika nilai variable sama dengan nilai yang dibandingkan.

Struktur Switch adalah sebagai berikut:switch (variable)case nilai:statementcase nilai:statemantcase nilai:statement

Page 30: Web Programming

Contoh<?php$a=2;switch($a){case 1:echo(“Nilai variable a adalah satu”);break;case 2:echo(“Nilai variable a adalah dua”);break;case 3:echo(“Nilai variable a adalah tiga”);break;}?>

Page 31: Web Programming

LatihanNilai Rata-Rata:UTS+TM+UAS/3Grade:1.90- : A2.80-89: B3.70-79: CHasil:1.A-C: Lulus2.D: Tidak Lulus

Page 32: Web Programming

ArrayArray di PHP adalah tipe variabel spesial,

karena dengan array kita dapat mengakses sekumpulan nilai dengan menggunakan satu nama variabel. Mekanisme pengaksesan ini diatur dalam bentuk pemetaan (mapping) dari sekumpulan nilai (values) ke sekumpulan kunci (keys) atau indeks.

Contoh :

Page 33: Web Programming

<?php$hacker[1] = "Eric S Raymond";$hacker[2] = "Richard Stallman";$hacker[3] = "Bruce Perens";$hacker[4] = ”Junior Bruce Perens";

for ($k=0;$k<4;$k++){ print"Nama hacker ke $k: $hacker[$k] <br>";}?>

Jalankakn dan Lihat Hasilny?

Page 34: Web Programming

Inisialisasi dan modifikasi Array$hacker = array("Eric S Raymond",

"Richard Stallman", "Bruce Perens");

$hacker = array (0 => "Eric S Raymond", 1 => "Richard Stallman",3 => "Bruce Perens");

$hacker = array("Eric S Raymond", "Richard Stallman", 3 => "Bruce Perens");

Page 35: Web Programming

Array Asosiatif$hacker = array(

"Pennsylvania" => "Eric S Raymond","Manhattan" => "Richard Stallman","Daly City" => "Rasmus Lerdorf","Berkeley" => "Bruce Perens" );

Tampilkan :foreach ($hacker as $kota=>$nama)

{print "$nama tinggal di kota $kota";}

Page 36: Web Programming

Multidimensional Array$hacker = array( array( "nama" => "Eric S

Raymond", "kota" => "Pennsylvania","url" => "http://www.tuxedo.org/~esr"),array( "nama" => "Richard Stallman", "kota" => "Manhattan","url" => "http://www.stallman.org"), array( "nama" => "Bruce Perens", "kota" => "Berkeley","url" => "http://www.perens.com"), array( "nama" => "Rasmus Lerdorf", "kota" => "Daly City","url" => "http://lerdorf.com"));

Page 37: Web Programming

Tampilkan :$pjg_array = count($hacker);

for ($k=0;$k<$pjg_array;$k++){print "<a href=\"{$hacker[$k]['url']}\">",$hacker[$k]['nama'],"</a> tinggal di kota {$hacker[$k]['kota']}";}

Page 38: Web Programming

Latihan :

Page 39: Web Programming

Output

Page 40: Web Programming

Fungsi Built in PHPFungsi built in atau sering disebut fungsi internal

adalah satu fungsi yang secara default telah disediakan oleh PHP. Dengan fungsi internal ini, kita tidak perlu lagi mendeklarasikan fungsi, karena sudah disediakan dalam support PHP, sehingga kita tinggal menggunakan atau memanggil fungsi tersebut untuk aplikasi penulisan script PHP. Fungsi-fungsi built in atau fungsi internal tersebut antara lain:

Contoh :Fungsi Array, Fungsi Class/Object, Fungsi Database, Fungsi Pengolah PDF, Fungsi Pengolah File, Fungsi Pengolah Gambar, Fungsi Matematika, Fungsi String, Fungsi Tanggal dan Waktu, Fungsi Reguler Ekspresi, Fungsi Variabel.

Page 41: Web Programming

UDFFungsi yang dibuat sendiri oleh pemrogram.

Dapat diletakkan dimana saja dalam script PHP, tapi sebaiknya diletakkan paling atas agar memudahkan dalam proses debugging dalam tahap pembuatan dan pengembangan program.

Deklarasi UDF :function namafungsi([parameter]) { Statement; Statement; .… {

Page 42: Web Programming

Fungsi ExternalDaftar fungsi yang belum diaktifkan dalam

keseluruhan modul PHP, untuk mengaktifkannya secara otomatis dengan meregistrasikan pada file PHP.INI.

Page 43: Web Programming

MODULARISASIModularisasi dalam pemrograman umum

dilakukan dan sangat diperlukan untuk mempermudah debugging dan pengembangan program. Modularisasi berarti melakukan pembuatan program berdasarkan modul-modul. Setiap modul dikembangkan untuk tujuan atau fungsi khusus. Modul dibuat secara general (umum). Modul dapat berupa fungsi atau prosedur

Page 44: Web Programming

Require Statement Require digunakan untuk membaca nilai

variable dan fungsi-fungsi dari sebuah file lain. Cara penulisan statement Require adalah:

require(namafile); Teknik ini cocok untuk membuat template (pola)

yang memudahkan proses pengembangan aplikasi dengan menggunakan pola tampilan. Misal dalam membuat design web yang dilakukan dengan kerja tim, pola dan gambar-gambar yang dibutuhkan dapat dibuat dengan teknik ini.

Statement Require ini tidak dapat dimasukkan diadalam suatu struktur looping misalnya while atau for. Karena hanya memperbolehkan pemangggilan file yang sama tersebut hanya sekali saja.

Page 45: Web Programming

IncludeStatement Include akan menyertakan isi

suatu file tertentu. Include dapat diletakkan di dalam suatu looping misalkan dalam statement for atau while.

Syntak penulisan : include (namafile);

Page 46: Web Programming

Latihan-latihan…Kerjakan latihan-latihan di bawah simpan dalam folder latihan.

Page 47: Web Programming

Menampilkan Array dengan foreach<?php$anak[0] = "Faruq"; $anak[1] = "Alya"; $anak[2] = "Zahro"; foreach ($anak as $value) { echo "Nama anak : $value"; echo "<br>"; {?>

Page 48: Web Programming

Pemakaian Fungsi Built-in : Matematika<?php$a = pow(2,10); //Fungsi perpangkatan $b = sqrt(100); //Fungsi akar $c = ceil(4.25); //Pembulatan keatas $d = floor(4.25); //Pembulatan kebawah echo "2 pangkat 10 = $a <br>"; echo "akar 100 = $b <br>"; echo "ceil(4.25) = $c <br>"; echo "floor(4.25) = $d <br>";?>

Page 49: Web Programming

Pemakaian Fungsi Built-in : Date & Time<?php$skr = date("d/m/Y"); echo "Sekarang adalah $skr <br>"; $waktu = date("h:i:s A"); //A menunjukkan

AM atau PM echo "Jam menunjukkan pukul : $waktu"; ?>

Page 50: Web Programming

Pemakaian Fungsi Built-in : String <?php$str = "Belajar PHP ternyata Menyenangkan"; echo strtolower($str); //Ubah huruf ke kecil semua echo "<br>"; echo strtoupper($str); //Ubah huruf ke besar

semua echo "<br>"; echo str_replace("Menyenangkan","mudah lho",

$str); //Mengganti string ?>

Page 51: Web Programming

Pemakaian Fungsi UDF : Tanpa Nilai Balik <?phpfunction psgpjg ($pjg, $lbr) { $luas = $pjg * $lbr; echo "$luas <br>"; {$bil1 = 5; $bil2 = 3; echo "Luas persegi panjang dengan pjg 5

dan lebar 3 ="; psgpjg($bil1,$bil2); ?>

Page 52: Web Programming

Pemakaian Fungsi UDF : Berisi Nilai Balik -> menggunakan return <?phpfunction psgpjg ($pjg, $lbr) { $luas = $pjg * $lbr; return $luas; {$bil1 = 5; $bil2 = 3; echo "Luas persegi panjang dengan pjg 5

dan lebar 3 ="; echo psgpjg($bil1,$bil2); ?>

Page 53: Web Programming

Pemakaian Fungsi : Tanpa nilai parameter<?phpfunction garis() { echo "<hr>"; {echo "Ini contoh fungsi yang tanpa

parameter <br>"; garis(); echo "Lihat perbedaan dengan fungsi yang

dengan parameter <br>"; garis(); ?>

Page 54: Web Programming

Modularisasi menggunakan require Simpan file berikut dengan nama :

contoh_require.php<?php $a="Saya sedang belajar PHP"; function tulistebal($teks) } echo "<b>$teks</b>"; { <?

Page 55: Web Programming

Buat file untuk memanggil file php diatas. <?php require("contoh_require.php"); //Akan

dipanggil 1x saja //dalam file php ini tulistebal("Ini adalah tulisan tebal"); echo "<br>"; echo $a; //Mengambil nilai dari require <?

Page 56: Web Programming

Modularisasi menggunakan includeSimpan file berikut dengan nama :

contoh_include.php

<?phpecho("--------------------------------------<br>"); echo("Lab. Komunikasi Digital PENS ITS

<br>"); echo("--------------------------------------<br>"); echo("<br>"); ?>

Page 57: Web Programming

Buat file untuk memanggil file diatas :

<?php for ($b=1; $b<5; $b++) }include("contoh_include.php"); //Include bisa dipanggil lbh dari 1x { <?

Page 58: Web Programming

http://dinus.net/~masaboe/array.php

Page 59: Web Programming

Bersambung ke : PHP MySQL...