Pengantar Multi Tier Application Aplikasi web yang akan kita kembangkan dalam workshop ini, akan menerapkan multi tier application. Multi tier application adalah aplikasi yang dibagi menjadi beberapa bagian yang menjalankan fungsi masing-masing. Setidaknya ada tiga bagian utama dari multi tier application:
Client side presentation
Server side business logic
Backend storage
Client Side/ Presentation Client side berfungsi mengatur bagaimana aplikasi berinteraksi dengan user. Yang dimaksud dengan interaksi antara lain adalah bagaimana data ditampilkan, bagaimana fungsi dan fitur aplikasi ditampilkan. Dalam aplikasi web, client side presentation dibuat dengan bahasa HTML, CSS, dan JavaScript. Beberapa tool yang digunakan untuk membuat client side presentation diantaranya Microsoft Frontpage, Macromedia Dreamweaver, dan sebagainya.
Server Side / Business Logic Server side, sering disebut juga middle tier, adalah bagian yang bertanggung jawab atas fungsionalitas aplikasi. Di dalamnya kita mengatur bagaimana fungsi dan fitur aplikasi bekerja sesuai fungsionalitas dari aplikasi web. Dalam aplikasi berbasis web, ada beberapa alternatif yang dapat digunakan, ditentukan oleh jenis platiform yang digunakan. Alternatif ini akan dijelaskan lebih detail pada bagian selanjutnya.
Back End Storage Bagian ini mengatur cara penyimpanan data. Penyimpanan data merupakan materi yang cukup kompleks dalam pembangunan aplikasi. Karena kecepatan, keutuhan, dan keamanan data merupakan faktor kritis dalam aplikasi. Ada banyak solusi database yang tersedia di pasaran. Pada umumnya, database yang digunakan bertipe relasional (Relational Database Management System – RDBMS). Manajemen data dilakukan dengan bahasa SQL (Standard Query Language).
Perbedaan Web Based Programming dengan Desktop Programming Pembuatan aplikasi berbasis web berbeda dengan pembuatan aplikasi berbasis windows (visual programming), misalnya Visual Basic, Delphi, atau KDevelop. Dalam visual programming, kita meningkatkan kecepatan dan kinerja aplikasi dengan mengoptimasi penggunaan memori, manajemen proses, dan pengaturan Input-Output. Pada pemrograman berbasis web, faktor yang menentukan kinerja aplikasi adalah kecepatan akses database dan kecepatan akses jaringan dan internet. Pada aplikasi visual, aplikasi dibangun dengan menggunakan tool tertentu, kemudian dikompilasi. Hasilnya dapat langsung digunakan dalam komputer. Aplikasi berbasis web tidak dapat dijalankan langsung di komputer. Untuk menjalankannya, dibutuhkan engine tertentu, dalam hal ini web server. Perbedaan yang paling penting adalah bahwa aplikasi desktop bersifat statefull. Artinya sekali pengguna mengakses aplikasi maka selama aplikasi tersebut aktif, maka pengguna tersebut akan dikenali sebagai entitas yang sama. Pada aplikasi web, pengguna hanya dikenali sebagai entitas yang sama sampai response dari server selesai atau yang biasa disebut dengan stateless. Sehingga perlu penanganan khusus terkait sifat dari aplikasi web yang stateless.
Teknologi Alternatif Teknologi server side yang akan kita pelajari pada modul ini adalah PHP. Walaupun demikian, perlu diketahui teknologi alternatif yang dapat menjadi bahan pertimbangan.
CGI Script CGI Script dapat dibuat dengan berbagai bahasa pemrograman, misalnya C, Perl atau Phyton. Teknologi ini pernah sangat populer di masa awal berkembangnya web based application. Tetapi saat ini banyak ditinggalkan orang karena tidak efisien, tidak fleksibel, dan keamanannya relatif lebih rendah.
ASP Merupakan solusi server side programming dari Microsoft. Teknologi ini banyak digunakan oleh para programmer yang berlatar belakang Visual Basic. Database pasangannya adalah MS SQL Server. Operating system pasangannya adalah Window 2000 Server yang menjalankan webserver Microsoft IIS.
JavaServlet – JSP/JSF Teknologi server side Java. Mempunyai banyak keunggulan dan kemudahan pemrograman. Tetapi karena murni berorientasi objek, banyak programmer pemula kesulitan menggunakannya. Selain itu,
Java juga adalah bahasa pemrograman yang relatif rumit bagi pemula. Keunggulannya, sangat portabel. Dapat dipindahkan dengan mudah dari Windows ke Unix dan sebaliknya.
PHP Banyak digunakan oleh programmer berlatar belakang C/C++ karena kemiripan syntaxnya. Open source, karenanya gratis dan bebas. Database pasangannya biasanya MySQL, dijalankan bersama webserver Apache di atas operating system Linux. Semuanya gratis dan bebas.
Mengapa memilih PHP Dari teknologi server side yang sudah dipaparkan diatas, PHP memiliki beberapa kelebihan daripada teknologi server side lain diantaranya : 1. PHP itu bebas. Siapa saja dapat mengunduh PHP bersama kode sumbernya. Tidak seperti teknologi lainnya yang tidak menyediakan kode sumber atau tidak mengijinkan untuk mengubah kode sumbernya. 2. PHP itu multiplatform. PHP dapat berjalan di UNIX (dan turunannya), Mac OS ataupun Windows. PHP awalnya di desain untuk berjalan di apache server namun seiring dengan ketenarannya, PHP dapat berjalan di hampir seluruh Web server yang tersedia untuk semua platform. 3. PHP khusus untuk membuat Aplikasi Web. Perl, C, Java adalah bahasa yang general yang dipakai untuk membangun seluruh jenis perangkat lunak. Kelebihan PHP adalah pengembangan PHP sangat diarahkan untuk lingkungan web sehingga seluruh fitur yang terdapat pada PHP sudah pasti mengarah untuk pengembangan Web. 4. PHP mudah dipelajari. Kemampuan pemrograman struktural dari bahasa lain dapat dengan mudah disesuaikan kedalam PHP. PHP sangat terinspirasi oleh C sehingga programmer C dengan sangat cepat dapat menguasai PHP. Tidak seperti java yang memerlukan tambahan pengetahuan pemrograman berorientasi objek untuk dapat menguasainya.
Hello World Dalam bagian ini, kita akan membuat kode program sederhana untuk menunjukkan bagaimana aplikasi PHP bekerja. Kita membutuhkan satu file yang akan kita namakan hello.php
Kode Sumber File hello.php akan berisi tiga baris kode sebagai berikut : echo(“hello world .. !”) ?>
Kompilasi Kode program pada umumnya akan mengalami proses kompilasi setelah source code selesai dibuat. Tetapi karena PHP adalah interpreted language, kita tidak perlu mengkompile kode ini.
Deploy Untuk mendeploy, copy file hello.php ke dalam folder percobaan yang telah disiapkan pada bagian instalasi di atas.
Error message Kode di atas akan mengalami error, karena kita terlalu banyak menulis tanda ). Pesan error akan muncul di layar, menunjukkan lokasi error pada kode, dan tipe errornya.
Output Perbaiki kode hello.php sehingga menjadi seperti berikut ini: echo(“hello world .. !”); ?>
Kemudian akses melalui browser file yang baru saja dibuat
Struktur PHP Statement Statement adalah satuan perintah dalam PHP. Statement harus diakhiri dengan tanda semicolon/titikkoma (;). Contoh statement : echo(“hello world .. !”) ?>
Expression Expression adalah satu bagian kecil kode yang akan diproses hasilnya oleh php. Contoh expression : 4 + 5
Penggunaan expression : echo(“4 + 5 = ” . 4+5); ?>
Comment Comment adalah bagian dari kode yang tidak dieksekusi/dijalankan. Comment dibuat untuk memperjelas atau memberi keterangan pada kode program. Ada dua cara menulis comment yaitu comment satu baris dan comment banyak baris. Comment satu baris dibuat dengan menggunakan tanda //. Semua statement yang ada di kanan // tidak dijalankan oleh interpreter. Contoh penggunaan: echo(“4 + 5 = ” . 4+5); // menampilkan hasil 4 + 5 ?>
Comment banyak baris dibuat dengan menggunakan pasangan /* dan */. Semua tulisan yang dibuat di antara tanda tersebut tidak akan dieksekusi oleh interpreter. Contoh penggunaan : /* kode ini akan menampilkan hasil dari 4 + 5 */ echo(“4 + 5 = ” . 4+5); ?>
Variabel Variabel adalah digunakan untuk menyimpan suatu nilai, seperti string teks “Coba PHP Script”, atau integer yang bernilai 5. Variabel dapat digunakaan kembali dalam kode program sesuai dengan tipe
nilai aktualnya. PHP mendefinisikan variabel selalu diawali dengan tanda $ yang kemudian diikuti nama variabelnya, seperti yang diberikan dalam format sebagai berikut : $nama_variabel = value; PHP tidak membutuhkan deklarasi variabel sebelum variabel tersebut dilakukan inisialisasi. Terdapat beberapa aturan tidak tertulis untuk memberi nama suatu variabel, seperti yang diberikan sebagai berikut : a. Variabel PHP selalu dimulai dengan dengan karakter b. Variabel PHP hanya terdiri dari karakter alpa-numerik atau underscore, a-z, A-Z, 0-9, atau _ . c. Variabel PHP yang memiliki lebih dari satu kata dipisahkan dengan underscore, seperti $jml_pemilih_th_2005. berikut contoh penggunaan variabel pada PHP.
Contoh Sederhana "); // ganti baris echo("Hasil = "); echo(" "); //memberikan efek spasi pada browser echo($hasil); // menampilkan hasil penjumlahan pada browser ?>
Fungsi Echo Seperti yang diberikan pada bagian sebelumnya fungsi echo adalah untuk menampilkan teks pada browser. Fungsi echo dapat dikombinasikan dengan perintah HTML sebagai efek penampilan teks pada browser.
Contoh Sederhana I love using PHP!"; ?>
Fungsi echo menggunakan quotes untuk mendefinisikan awal dan akhir dari suatu string, sehingga dibutuhkan suatu taktik jika string berisi quotations, seperti yang diberikan diatas. Adapun taktik yang digunakan adalah sebagai berikut : a. Jangan menggunakan quotes di dalam string b. Batalkan quotes dengan memberikan string slash (\) secara langsung sebelum quotations mark c. Gunakan quotes tunggal (apostrophes) untuk quotes di dalam string
I love using PHP!"; // Tidak dapat bekerja karena quotes pada specialH5 echo "
I love using PHP!
"; // Dapat bekerja karena quotes di batalkan dengan \ echo "
I love using PHP!
"; // Dapat bekerja karena menggunakan apostrophe '. ?>
Untuk menampilkan nilai variabel dengan menggunakan Fungsi echo sangatlah mudah, seperti yang diberikan pada kode sumber dibawah ini.
Dalam pemrograman PHP dapat dilakukan untuk mengkombinasikan string teks dengan variabel secara bersama-sama, seperti pada kode sumber dibawah. Variabel dan string teks dapat digabungkan dengan menggunakan (.). Metode menggabungkan satu atau lebih string secara bersama-sama disebut dengan konkatenasi. "; //ganti baris echo $my_string . "Aris" . $newline; //konkatenasi echo "Hi, I'm Mitha. Who are you? " . $my_string . $newline; echo "Hi, I'm Mitha. Who are you? " . $my_string . "Aris"; ?>
Strings Sebelum dapat menggunakan string, maka string terlebih dahulu harus dibuat. String dapat digunakan di dalam fungsi atau di simpan pada variabel. Pada bagian ini diberikan pendefinisian string yang di simpan pada variabel dan menempatkan string secara langsung di dalam fungsi, seperti pada kode sumber dibawah ini. Untuk keperluan penggunaan string yang di proses lebih lanjut, sebaiknya pendefinisian string dilakukan dengan menyimpan pada suatu variabel. "; //ganti baris echo "String directly into a function"; ?>
String dapat juga di buat dengan menggunakan quotes tunggal, tidak seperti yang diberikan pada bagian sebelumnya yang selalu menggunakan quotes ganda. Jika diperlukan untuk mengolah quotes dapat dilakukan dengan memberikan backslash (\) sebelum quotes, seperti yang diberikan pada kode sumber dibawah ini. "; //ganti baris echo 'String directly into a function'; echo "
"; //ganti baris echo '\'String directly into a function with single qoutes \''; echo "
"; //ganti baris echo "\"String directly into a function with double qoutes \""; ?>
Fungsi Include Fungsi include meletakan nama file dan menyisipkan isi file ke dalam file yang memanggil file include. Untuk memberikan kemudahan dalam melakukan references, maka file yang akan di include diberi nama file dengan ekstensi .inc. Nama File : menu.inc
href="index.php">Home href="about.php">About Us href="links.php">Links href="contact.php">Contact Us
Nama File : latihPhp001.php
Menggunakan fungsi include : menu.inc
Kode sumber latihPhp001.php memanggil file menu.inc, kondisi seperti ini akan lebih efektif jika file yang di include sering digunakan oleh file halaman lain. Kode sumber latihPhp001.php jika dilakukan view source pada browser, maka akan menampilkan isi file pada kode sumber latihPhp001.php diikuti file kode sumber menu.inc. Fungsi include memiliki esensi yang sama seperti kondisi copy paste teks, dan dapat ditempatkan pada struktur perulangan seperti for atau while yang akan diuraikan pada bagian berikutnya.
Perintah IF dan IF - ELSE Perintah if pada PHP adalah memiliki esensi yang sama dengan perintah if yang terdapat pada bahasa pemrograman yang lainnya. Perintah if digunakan untuk melakukan eksekusi suatu perintah dengan memberlakukan syarat, jika syaratnya dipenuhi (bernilai true) maka perintah tersebut akan dilakukan eksekusi dan jika tidak dipenuhi (bernilai false) maka perintah tersebut tidak dilakukan eksekusi. Adapun format penulisan perintah if adalah sebagai berikut :
if (kondisi) { statement } atau: if (kondisi) { statement } else { statement lain } atau: if (kondisi pertama) { statement pertama } elseif (kondisi kedua) { statement kedua } else { statement lain }
$b) { echo("a lebih besar dari pada b"); } elseif ($a<$b) { echo("a lebih kecil b"); } else //($a = $b) { echo("a sama dengan b"); } ?>
Operator Pada semua bahasa pemrograman operator digunakan untuk melakukan manipulasi atau menjalankan operasi pada variabel dan nilai. Terdapat beberapa kategori operator yang digunakan dalam PHP, yaitu sebagai berikut :
Operator Assignment (=) Operator assignment digunakan untuk men-set variabel ke nilai tertentu atau men-set variabel ke nilai variabel lainnya. $nilai = 4; $nilai = $harga; //Variabel $nilai dan $harga di-set bernilai 4 Operator Aritmatika
Operator + * / %
Keterangan Penjumlahan Pengurangan Perkalian Pembagian Sisa Hasil bagi
1 3 2 6 5
+ – * / %
Contoh 2 = 3 1 = 2 3 = 6 2 = 3 4 = 1
"; echo "Pengurangan : 6 - 2 = " . $subtraction . "
"; echo "Perkalian : 5 * 3 = " . $multiplication . "
"; echo "Pembagian : 15 / 3 = " . $division . "
"; echo "Sisa Hasil Bagi : 5 % 2 = " . $modulus; ?>
Operator Perbandingan Perbandingan digunakan untuk melakukan pengecekan hubungan antara variabel dan/atau dengan nilai-nilai tertentu. Operator perbandingan digunakan pada perintah kodisional (perintah if) dan melakukan evaluasi bernilai true atau false. Operator Perbandingan Operator == != < > <= >=
Keterangan Sama dengan Tidak sama dengan Kurang dari Lebih dari Kurang dari sama dengan Lebih dari sama dengan
$x $x $x $x $x $x
Contoh == $y != $y < $y > $y <= $y >= $y
Hasil False True True False True False
Operator String Operator string yang digunakan untuk menambahkan satu atau lebih string secara bersama disebut dengan konkatenasi (.) , seperti yang telah diberikan pada bagian fungsi echo. Kombinasi Operator Aritmatika dan Assignment Dalam pemrograman, biasanya dibutuhkan untuk melakukan increment terhadap suatu variabel atau lebih sering di sebut dengan counter. Misalnya variabel $counter akan dilakukan increment dengan nilai kenaikannya adalah 1, maka representasinya adalah $counter = $counter + 1 atau dapat dipersingkat cara penulisannya dengan $counter += 1. Kombinasi Operator Aritmatika dan Assignment Operator += -= *= /= %= .=
Keterangan Plus Equals Minus Equals Multiply Equals Divide Equals Modulo Equals Concatenate Equals
Contoh $x +=2 $x -=4 $x *=3 $x /=2 $x %=2 $str .=”Hello”
Ekuivalen Operasi $x = $x + 2 $x = $x - 4 $x = $x * 3 $x = $x / 2 $x = $x % 2 $str=$str.”Hello”
Untuk menambahkan atau mengurangi suatu variabel counter dengan nilai 1, dapat dilakukan dengan menggunakan operator “++” atau “--”. Untuk representasi operator “++” atau “--” dapat dilakukan dengan menggunakan aturan Post atau Pre. Efek yang diberikan pada kedua aturan tersebut dapat dilihat pada kode sumber 6.16. Post akan dilakukan eksekusi setelah semua line code selesai di eksekusi, tetapi Pre akan segera di eksekusi tanpa harus menunggu semua line code selesai di eksekusi. Nilai x sesudah post-increment = " . $x; $x = 4; //inisialisasi echo "
Nilai x dengan pre-incrementing = " . ++$x; //nilai x sudah dilakukan increment echo "
Nilai x sesudah pre-increment is = " . $x; ?>
Array Array adalah suatu struktur data yang menyimpan sekumpulan variabel yang memiliki tipe data yang sama. Secara umum bentuk representasi array adalah $Array_Name[index] = value ;
$Array_Name adalah nama variabel array, index adalah angka yang menspesifikan elemen suatu array, dan value adalah nilai dari elemen array tersebut. Setiap nilai index suatu array merepresentasikan nilai yang dapat dilakukan manipulasi dan di reference. Array dalam PHP nilai index tidak hanya berbentuk bilangan numerik tetapi dapat juga dalam bentuk string. Dua Pekerja yang lainnya adalah " . $employee_array[2] . " & " . $employee_array[3]. "
"; echo "Aris di gaji sebesar - $" . $salaries["Aris"] . "
"; echo "Dewi di gaji sebesar - $" . $salaries["Dewi"] . "
"; echo "Shinta di gaji sebesar - $" . $salaries["Shinta"] . "
"; echo "Miranthi di gaji sebesar - $" . $salaries["Miranthi"]; ?>
While Loop Fungsi While loop digunakan untuk melakukan proses perulangan terhadap suatu perintah yang berada pada bodi perulangan selama kondisinya dipenuhi atau bernilai true, tetapi jika kondisinya tidak dipenuhi atau bernilai false maka proses perulangan akan berhenti. While loop digunakan untuk melakukan proses perulangan yang jumlah perulangannya belum diketahui dengan pasti. Adapun bentuk dasar while loop adalah : while ( conditional statement is true){ do this code; }
echo "
"; echo "Jumlah | "; echo "Harga |
"; //perulangan while bernilai true utk $counter <= 100 while ( $counter <= 100 ) { echo ""; echo $counter; echo " | "; echo $brush_price * $counter; echo " |
"; $counter = $counter + 10; } //($counter > 100) echo "
"; ?>
For Loop Fungsi For loop memiliki kegunaan yang sama dengan while loop, tetapi for loop digunakan untuk melakukan proses perulangan yang jumlah perulangannya sudah diketahui dengan. Adapun bentuk dasar for loop adalah :
for (inisialisasi counter; conditional statement; increment
counter){
do this code; }
"; echo "
Jumlah | "; echo "Harga |
---|
"; //perulangan for sebanyak 10 kali for ( $counter = 10; $counter <= 100; $counter += 10) { echo "
"; echo $counter; echo " | "; echo $brush_price * $counter; echo " |
"; }//($counter > 100) echo ""; ?>
Post dan Get Method Untuk memproses informasi form halaman HTML dapat digunakan dua metoda, yaitu menggunakan Post dan Get method.
Post Method Post method digunakan untuk melakukan submit informasi dari form halaman HTML ke halaman PHP, dimana halaman PHP akan menyimpan semua nilai yang di posting ke dalam array $_POST, dengan menggunakan nama form data item sebagai kunci/index dari suatu array (nama form data item tidak boleh ada yang sama). Untuk contoh diberikan pada kode sumber orderForm.html merupakan form halaman HTML dan prosesOrder.php merupakan halaman PHP. Nama File : orderForm.html
Contoh Order Form
Nama File : prosesOrder.php "; echo "Terima Kasih untuk Order Yang Anda Lakukan!"; ?>
Get Method Get method merupakan alternatif dari Post method, adapun perbedaan adalah terkait dengan array yang digunakan adalah $_GET, dan nilai variabel yang di passing ke halaman PHP ditambahkan pada akhir alamat URL, seperti di bawah ini : "?item=##&quantity=##"
Tanda “?” maksudnya adalah untuk memberitahu kepada browser bahwa item tersebut merupakan variabel dan “##” adalah nilai dari variabel tersebut. Get method akan menampilkan informasi variabel ke browser, sehingga untuk informasi password atau informasi lain yang bersifat sensitif disarankan untuk tidak menggunakan Get method, karena informasi variabelnya dan nilainya akan diketahui oleh visitor, seperti yang diberikan pada kode sumber orderForm1.html dan prosesOrder1.php. Nama File : orderForm1.html
Contoh Order Form
Nama File : prosesOrder1.php "; echo "Terima Kasih untuk Order Yang Anda Lakukan!"; ?>
Session Session digunakan untuk mendaftarkan suatu informasi yang terdapat pada halaman ke cookies dengan memberikan identitas session tersebut, yang dapat ditampilkan dengan variabel $_SESSION[‘SID’], sehingga informasinya akan melekat secara terus menerus sampai session tersebut dihancurkan. Untuk membuat variabel session dimulai dengan memanggil fungsi session_start(),untuk mendaftarkan variabel session tersebut dapat melalui pemberian nilai pada variable $_SESSION[‘namaSession‟] , untuk
menghapus
variabel
yang
sudah
didaftarkan
digunakan
unset($_SESSION[„namaSession‟]) untuk melakukan pengecekan session sudah terdaftar
atau
belum
digunakan
session_is_registered(namaSession).
pemanggilan variabel session digunakan variabel
Untuk
melakukan
$_SESSION[„namaSession‟], dan setelah
session tersebut tidak lagi digunakan maka dapat dihancurkan dengan menggunakan fungsi session_destroy(). Adapun untuk contoh penggunaan session diberikan pada kode sumber session1.php, session2.php, dan session3.php. Nama File : session1.php
Test Nilai Session
Nama File : session2.php Peringatan : Session Tidak Ada !!!"."
"; echo"
Anda Harus Mendaftarkan Session Terlebih Dahulu
"; echo"
<<<
Test Session Lagi>>>"; } else{ echo "
Nilai Session Ter-register" . "
"; echo "Session 1 = ".$_SESSION[„session1‟]."
"; echo "Session 2 = ".$_SESSION[„session2‟]."
"; ?>
Destroy Session
Nama File : session3.php
header("location: session2.php"); ?>
PHP dan MySQL Seperti yang telah diberikan pada bagian sebelumnya bahwa PHP dan MySQL adalah merupakan dua perpaduan komponen yang sangat baik, adapun keduanya akan digunakan untuk membangun aplikasi yang lebih komplek yang terkait untuk menggunakan data yang disimpan secara persistent. Keduanya digunakan untuk membangun aplikasi e-Commerces, e-Government, e-Learning, atau aplikasi lain yang bersifat Business To Business (B2B) maupun Business To Customers (B2C). Koneksi PHP dengan MySQL Untuk melakukan koneksi dengan database MySQL dapat digunakan script fungsi koneksi yang diberikan pada kode sumber connectDB.php. Variabel $host,
$username,
$password
dan
$databasename dapat disesuaikan sesuai dengan setting pada MySQL server yang digunakan. Misalkan, Untuk menampilkan isi record pada tabel anggota diberikan pada kode sumber tampilTabel.php dan untuk dalam versi lain diberikan pada kode sumber tampilTabel1.php. Nama File : connectDB.php
or
Nama File : tampilTabel.php "); echo("
No | Nama | E-Mail | Alamat | Kota |
"); // ------ ambil isi masing-masing record while ($row = mysql_fetch_object ($result)) { // ----- mengambil isi setiap kolom $nomor=$row->nomor; $nama=$row->nama; $email=$row->email; $alamat=$row->alamat; $kota=$row->kota; // ------ menampilkan di layar browser echo("
$nomor | $nama | $email | $alamat | $kota |
"); } echo(""); ?>
Nama File : tampilTabel1.php
koneksi dengan data base <meta http-equiv="Content-Type" content="text/html; 8859-1">
charset=iso-
//require("connectDB.php"); $con=koneksiDB();//membuka koneksi dengan database //echo("buat koneksi"); echo("
"); $tableName="anggota"; //menggunakan tabel anggota $sqlString="select * from $tableName"; //query menggunakan perintah SQL //hasil query ditampung pada resultSet $resultSet=mysql_query($sqlString) or die ("Salah dalam pada perintah sql"); //tutup koneksi mysql_close($con); // fungsi untuk melakukan koneksi dengan database function koneksiDB() { //Kamus Lokal $host="localhost"; $username="root"; $password=""; $databasename="privatedb"; //membuat object koneksi $con=mysql_connect($host,$username,$password) or die("Gagal Koneksi dengan data base"); mysql_select_db($databasename,$con); return $con; } ?>
|
<strong>Deskripsi | <strong>: | <em>Koneksi dengan data base MySQL menggunakan suatu FUNGSI() untuk menampilkan semua record sebagai hasil query | <strong>Nama File | <strong>: | <em>coba003.php | <strong>Pembuat | <strong>: | <em>Aris Puji Widodo | <strong>Tanggal | <strong>: | <em>03 Januari 2005 |
|
|
<strong>NO | <strong>Nama | <strong>Email | <strong>Alamat | <strong>Kota |
nomor; $nama=$row->nama; $email=$row->email; $alamat=$row->alamat; $kota=$row->kota; ?> | | | | |
PHP Dalam Proyek Perangkat Lunak Software Enggineering Software engineering adalah sistematika dalam pembuatan perangkat lunak. Dalam pembuatan web application seringkali developer melupakan penerapan rekayasa perangkat lunak dalam proses pembuatannya. Hal tersebut karena proyek web seringkali merupakan proyek yang kecil pada awalnya. Namun seiring perkembangan dari konten dan kebutuhan user, kode akan sulit di maintain karena desain dari aplikasi sering kurang menerapkan best practice dalam pengembangan proyek perangkat lunak sehingga akan menghasilkan aplikasi yang memiliki banyak bugs, deadline yang terlewat serta code yang tidak dapat dikembangkan untuk fungsionalitas yang lebih lanjut. Untuk itulah diperlukan penerapan prinsip-prinsip rekayasa perangkat lunak dalam proyek aplikasi web.
Proses dalam sebuah web proyek Dalam sebuah web proyek, tidak ada metodologi yang terbaik yang digunakan dalam pengembangan perangkat lunak. Masing masing memiliki kelebihan dan kekurangan. Yang menjadi kunci adalah memilih bagian mana yang dapat digunakan atau tidak dalam sebuah metodologi. Ada hal yang perlu diperhatikan dalam sebuah web proyek antara lain: 1. Sebelum memulai proyek, tentukan goal dari aplikasi web. Tentukan target pengguna dari aplikasi web ini. Seringkali proyek yang dibuat sangat baik gagal hanya karena pengguna tidak tertarik dengan fitur yang ditawarkan. 2. Bagi aplikasi web menjadi komponen-komponen yang independen atau hampir independen satu sama lain. Kunci dari bagian ini adalah penguasaan tehnik divide and conquer dalam pengembangan aplikasi. Kadang menggunakan storyboard, DFD ataupun Use case dapat membantu memvisualisasi dalam bagian ini. 3. Setelah aplikasi web terbagi menjadi komponen-komponen, tentukan apakah komponen tersebut ada yang telah dibuat oleh tim internal ataupun sebuah proyek open source. Jika ada maka tentukan pula apakah komponen tersebut bisa kita gunakan kembali dalam proyek ini atau kita harus buat ulang dari awal. 4. Tentukan gaya dan standar tertentu yang akan digunakan dalam pengembangan proyek. Bagian ini yang sering sekali dilewati oleh pengembang web. Gaya dan standar ini dapat berupa coding standart, struktur direktori dan penggunaan IDE. 5. Buat prototype dari aplikasi, bisa berupa prototype user interface ataupun prototype dari aplikasi yang dibuat kemudian presentasikan kepada pengguna. Jika ada perubahan maka ulangi proses prototyping tersebut sampai semua fungsi telah diterima oleh pengguna. 6. Lakukan optimisasi jika diperlukan. 7. Diakhir proyek jangan lupa melakukan test secara menyeluruh sebelum aplikasi web masuk ke tahap production untuk menghindari bugs yang tidak diperlukan. Pada tahap ini juga diharapkan
seluruh error yang ditampilkan php disembunyikan sehingga tidak mengekspos direktori yang mungkin dimanfaatkan oleh pihak yang tidak berwenang.
Reuse Code Kesalahan yang sering dibuat pengembang adalah membuat kode / function yang sudah pernah dibuat. Kode / function tersebut dapat berasal dari built in library dari PHP sendiri, internal tim pengembang ataupun kode yang berasal dari proyek-proyek opensource di internet. Putuskan dengan hati-hati apakah akan menulis sebuah fungsi dari awal atau memakai yang sudah tersedia. Dengan ini diharapkan dapat dengan signifikan mempersingkat waktu pengembangan proyek.
Coding standart Sebuah standar penting digunakan dalam sebuah proyek. Standar ini dapat dibuat sendiri ataupun mengacu standar tertentu yang telah dibuat oleh organisasi / instansi tertentu. Standar ini dapat berupa standar nama file dan variable, standar dalam dokumentasi kode, standar dalam indentasi kode dan lain lain. Standar ini sering sekali dilupakan dalam tim yang kecil ataupun pengembang yang mengembangkan proyek sendirian. Namun sebuah proyek memiliki kemungkinan berkembang, baik dari segi spesifikasi maupun pertambahan anggota tim. Jangan sampai sebuah proyek gagal hanya karena anggota tim yang baru tidak dapat mengikuti hasil koding sebelumnya. Menentukan standar nama file dan variable Tujuan penggunaan standar dalam nama file dan variable adalah : 1. Agar kode mudah dibaca. Penamaan yang baik menyebabkan kode dapat mudah dibaca oleh orang lain dalam tim pengembang sehingga kerja tim tidak terganggu oleh tanya jawab terkait variable yang dibuat atau file yang dibuat. 2. Agar mudah diingat. Jika nama variable dan file dibuat secara konsisten maka tim akan mudah mengingat variable dan file yang ada dalam sebuah perangkat lunak. Nama variable / file haruslah menggambarkan data atau proses yang ada didalamnya sehingga aplikasi yang kita buat dapat mudah sekali dibaca bahkan oleh tim diluar tim pengembang. Penggunaan kapitalisasi nama haruslah diperhatikan karena sifat PHP yang case sensitive. Masalah yang sering terjadi adalah variable yang sama dengan kapitalisasi yang berbeda karena dibuat oleh orang yang berbeda sehingga menjadi bug dalam aplikasi yang dibuat. Memberi komentar dalam kode Semua bagian kode harus diberi komentar terkait bagian tersebut untuk memudahkan orang lain memahami kode yang kita buat. Hal yang biasanya diberikan komentar antara lain : file, function, class ataupun kode tertentu yang perlu diberi perhatian. Hal lain yang terpenting adalah beri komentar pada kode langsung setelah kode tersebut dibuat. Sering kita befikir untuk member komentar pada kode setelah aplikasi selesai dibuat namun hal tersebut jarang di realisasikan sehingga menghasilkan kode yang bisu karena kode tersebut hanya bias dipahami oleh pembuatnya.
Indentasi Kode Dalam pembuatan program indentasi adalah melakukan format pada penulisan kode agar kode mudah dibaca. Sama seperti pembuatan karya ilmiah, format yang dibuat harus konsisten agar kode mudah dibaca. Standarisasi struktur direktori Ketika memulai proyek penting sekali untuk memikirkan struktur dari sebuat aplikasi web. Biasanya pembagian ini terkait dengan fungsionalitas yang mirip ataupun berdasarkan arsitektur dari aplikasi tersebut. Adalah ide yang buruk jika menempatkan seluruh file dalam sebuah direktori. Selain file akan sulit dicari proyek akan sulit di maintain jika seluruh file diletakkan dalam satu direktori. Menggunakan IDE Penggunaan tools dapat membantu mempercepat pengembangan proyek. Programemer tidak akan menghadapi kesalahan pengetikan ataupun harus mengingat built in function yang terdapat dalam PHP karena hal tersebut biasanya sudah terotomatisasi dalam sebuah IDE.
PHP Mini Blog Dalam sesi selanjutnya dalam workshop ini adalah pembuatan sebuah produk aplikasi web menggunakan PHP. Produk yang akan dibuat adalah sebuah mini blog. Mini blog adalah sebuah contoh mudah dari sebuah aplikasi web dinamis. Dengan pembuatan mini blog ini diharapkan dapat menerapkan prinsip-prinsip yang sudah dipaparkan pada bagian sebelumnya.
Spesifikasi kebutuhan perangkat lunak Spesifikasi kebutuhan perangkat lunak dari mini blog yang akan dikembangkan antara lain : 1. 2. 3. 4. 5.
Sistem dapat mempublikasi tulisan dari pengguna Sistem dapat menampilkan kategori dari artikel atau tulisan Sistem dapat melakukan autentikasi pengguna Sistem dapat menampilkan hit dari artikel Sistem dapat melakukan pemisahan antara tampilan dan logika bisnis perangkat lunak
Entity Relationship Diagram
Struktur Direktori Struktur direktori yang dipakai adalah sebagai berikut : 1. ./prog/ : berisi business logic yang terdapat dalam program 2. ./skin/ : berisi file template tampilan dan file client side dari aplikasi
Templating pada PHP Seperti yang sudah dipaparkan pada bagian pertama bahwa aplikasi yang akan dibuat merupakan multi tier application yang melakukan pemisahan antara presentation dan business logic. Sistem templating merupakan solusi untuk memisahkan antara tampilan dan logika program. Barikut adalah langkahlangkah dalam templating PHP 1. Buat atau tentukan file tampilan utama dari sebuah web. 2. Bagi menjadi bagian bagian yang terpisah misal header, body dan footer ataupun praktek lain yang bisa disesuaikan dengan proyek yang dilakukan. 3. Subtitusikan bagian tersebut dengan variable atau fungsi yang nantinya akan diisi atau dipanggil dari bagian business logic. Untuk lebih jelasnya perhatikan contoh dibawah Nama file : index.php
Nama file : skin.php
Hello !