Jumat, 30 Desember 2011

Makalah Pemprograman Web

PEMBAHASAN

1. Definisi
#CGI
CGI(Command Gateway Interface) adalah suatu bentuk komunikasi dimana client (browser) dapat mengirimkan suatu masukan kepada server, dan server mengolah masukan tersebut serta mengembalikannya kepada client (browser)
Program CGI adalah program yang didisain untuk menerima dan mengembalikan data sesuai dengan spesifikasi CGI. Program tersebut dapat ditulis menggunakan bahasa pemrograman seperti C, Perl, Java atau Visual Basic.

#Perl
Perl merupakan singkatan dari Practical Extraction and Report Language, dibuat oleh Larry Wall.

Perl adalah bahasa interpreter sekaligus kompiler, artinya Perl akan mendeteksi setiap baris untuk mencari syntax error sebelum program dijalankan.

2. Arsitektur












3. Konsep
#Variabel di Perl
• Perl memiliki tiga tipe data: skalar, array, dan hash.
• Skalar menyimpan nilai tunggal, array menyimpan kumpulan skalar dengan urutan tertentu, sedangkan hash menyimpan kumpulan skalar berpasangan.
• Sebuah variabel dinyatakan dengan tanda awalan tertentu yang merujuk pada tipe data yang dikandungnya, serta nama yang berfungsi sebagai pengenal.
• Tanda pengenal adalah $ untuk skalar, @ untuk array, dan % untuk hash.
• Nama variabel terdiri atas huruf dan angka, disebut juga alfanumerik (karakter “_” dihitung sebagai huruf).
• Nama variabel tidak boleh dimulai dengan angka.
• Tidak ada ketentuan mengikat mengenai berapa panjang nama variabel yang boleh digunakan.

1. Skalar
Variabel skalar menyimpan unit data yang paling mendasar. Apa yang dikandung skalar, itu jugalah yang bisa dikandung oleh array dan hash. Sebuah skalar hanya mengandung string atau angka. Ini juga berarti bahwa semua informasi—dari manapun asalnya—akan diperlakukan sebagai string atau angka. String dikutip menggunakan kutip ganda atau kutip tunggal. Angka bisa berupa bilangan bulat, oktal, heksadesimal, maupun pecahan desimal.
$nama = ‘hasan’;
$_nama2 = $nama . ‘t’; # hasant
$tahun = 2001;
$satu_dollar = 8500.43;
$dua_tahun_lalu = $tahun - 2; # 1999
Untuk memasukkan kutip tunggal dalam string yang dikutip tunggal digunakan \ (garis miring terbalik) di depannya. Begitupun untuk memasukkan kutip ganda dalam string yang dikutip ganda. Dan untuk memasukkan \ itu sendiri, tambahkan \ satu lagi. Ini disebut meng-escape character.
$putih = ‘#FFFFFF’;
$body = “”;
$dialog = ‘”Dia t\’lah pergi,” katanya’;

2. Array
Array didefinisikan dengan memasukkan elemen-elemennya ke dalam tanda kurung dan dipisahkan dengan , (koma). Koma tidak wajib diletakkan pada elemen terakhir. Di Perl, ini sebenarnya sebuah konstruksi data yang disebut list.
@minuman = (’kopi’, ‘teh’, ‘air’);
Kadang-kadang kedua istilah ini, array dan list, bisa dipertukarkan, dan memiliki makna yang sama. Namun, harus disadari bahwa keduanya tetap berbeda secara logik. Array adalah jenis variabel, sementara list adalah konstruksi data. Dalam pengertian singkat, bisa dikatakan bahwa array adalah list yang bernama. Semua array berisi list, tapi tidak semua list berupa array. Dengan pengertian ini kita bisa mendefinisikan sekumpulan variabel skalar dalam list.
($satu, $dua, $tiga) = (1, 2, 3);
Elemen array diakses dengan sintaks $array[0], angka di dalam “[]” menujukkan indeks elemen dimulai dari 0, yang berarti elemen pertama. Indeks negatif (dimulai dari -1) menghitung elemen dari belakang.
$minuman[0] # berisi “kopi”
$minuman[2] # berisi “air”
$minuman[-1] # sama, berisi air
Jika kebetulan semua elemen array tidak ada yang mengandung spasi, maka kita bisa mendefinisikan sebuah array tanpa menggunakan tanda kutip dan koma. Sebagai gantinya kita menggunakan operator qw().
@minuman = qw(kopi teh air);

3. Hash
Definisi hash mirip dengan array. Setiap elemen hash terdiri atas pasangan indeks (key) dan nilai (value). Berbeda dengan array, indeks di hash menggunakan string, dan nilainya bisa diakses dengan sintaks $hash{’indeks’}.
%aplikasi = (
‘bahasa’, ‘perl’,
’server’, ‘apache’,
‘teks’, ‘vim’,
);
print $aplikasi{’bahasa’}; # perl
Indeks yang mengandung karakter sederhana tidak perlu dikutip karena otomatis dianggap sebagai string. Namun jika indeks mengandung karakter selain huruf dan angka, kutip harus digunakan. Hal ini juga berlaku ketika mengakses elemen. Jadi, $aplikasi{’bahasa’} bisa ditulis sebagai $aplikasi{bahasa}.
Benar dan Salah. Kadang-kadang Anda tidak ingin mengetahui nilai kembalian dari sebuah ekspresi, baik string maupun angka, Anda hanya ingin tahu benar atau salah. Perl tidak punya jenis data boolean khusus. Nilai sebuah ekspresi adalah salah satu dari: tak terdefinisi (undefined), benar (true), atau, salah (false). Untuk memudahkan urusan, selanjutnya saya akan menyebut “tak terdefinisi” dengan “undef”. Aturan Perl sederhana, semua nilai benar, kecuali yang undef, string kosong (“” atau ‘’), angka 0, dan string “0″.

4. Struktur

PERL – Header HTTP
Karena kita sedang bekerja dalam Web. Kita harus mengenal HTTP. Sehingga PERL dapat dikerjakan di Web. Untuk itu perlu digunakan kode-kode agar dapat memanggilnya di HTTP.Contoh :
firstscript.pl:
#!/usr/bin/perl

print "content-type: text/html \n\n";


Sampai saat ini yang telah sibuat adalah baris perl Intrepeter . Baris untuk pengenalan di HTTP agar dapat mengerjakan PERL dalam PERL juga sudah di buat.

PERL - Hello, PERL! Script
Setelah membuat kedua baris dia atas. Barulah teks dapat di cetak di Web.
helloperl.pl:
#!/usr/bin/perl

print "content-type: text/html \n\n";

print "Hello, PERL!";

Maka hasil nya adalah Hello, PERL! Di dalam Web. Langsung dan sederhana.


PERL – Syntak
PERL meggunakan sintak yang sangat spesifik yang sangat penting untuk menghindari kesalahan atau kegagalan delam men-debugging kode-kode.

PERL Nama File
Skrip perl dapat dibuat dalam program teks editor yang sederhana. Ada beberapa program yang tersedia untuk tiap-tiap jenis platform. Ada banyak program yang dirancang untuk para programer yang dapat di download dalam Web.
Dengan mengabaikan program yang telah dipilih, file perl harus di beri nama dengan a.pl (.PL) agar dikenali sebagai skrip dalam PERL. Nama file bisa dengan angka, lambang, dengan catatan tidak menggunakan space/spasi. Gunakan garis bawah sebagai pegganti space/spasi.

Contoh PERL:
my1stPERLscrtip.pl
1st_PERLscript.pl

PERL - Komentar
Seperti bahasa program lainnya, PERL menawarkan penulisan komentar dengan tanda #. Apapun termasuk kata, spasi, lambang, angka akan diabaikan oleh program. Program yang baik selalu memberikan tempat untuk komentar yang dapat membantu dalam penjelasan program yang dibuat, ini merupakan cara yang baik agar kode atau skrip yang dibuat dapat di mengerti orang. Komentar sangat penting jika ingin menunjukkan kepada orang banyak.

PERL Comment:
#!/usr/bin/perl

print "Content-type: text/html \n\n"; # the header
#########################################
#Comments start with a #
#########################################

Contoh diatas mungkin sering dilihat ketika mendownload dari web.

PERL – Skrip pertama
Program pertama kita adalah untuk mencetak “Hello, World!”, walaupun sangat sederhana tapi bagus untuk permulaan. Buat kode dan document teks baru dengan teks editor kemudian di simpan dengan nama a.pl. Perhatikan sejak kita meggunakan/menjalankan program dalam Web browser dan jangan lupa tambahkan “header” agar dapat diketahui kita menggunakan Web.

:
#!/usr/bin/perl

Suatu header harus terdapat di dalam skrip PERL sebagai ciri modul yang digunakan untuk keseluruhan skrip. Sejak kita menfokuskan ke aplikasi Web PERL. Header tersebut tidak akan berubah dalam tutorial ini, kecual kita menggunakan modul CGI nantinya.

PERL Header:
#!/usr/bin/perl

print "Content-type: text/html \n\n"; # ini adalah header untuk aplikasi web

Header harus diikuti dengan karakter (\n).yang merupakan syaratnya

PERL Code:
#!/usr/bin/perl

print "Content-type: text/html \n\n"; # the header
print "Hello, World!";

Display:
helloworld.pl
________________________________________

Hello, World!

Skrip yang dibuat akan ditampilkan dalam dokumen HTML, dengan demikian kita juga dapat membuat kode HTML di dalam PERL
Perlu diingat yang tidak kalah pentingnya adalah untuk Men-CHMOD program perl yang sudah dibuat dengan 755 yang memberikan akses kepada semua user untuk menjalankan dan membaca program.

PERL – Karakter Escaping
Dalam PERL kita menggunakan backslash untuk karakter spesial. Karakter escape digunakan jika kita memakai lambang dollar ($) tanda (@) dan tanda petik (’).Lambang dollar dapat diartikan sebagai variabel sedangkan tanda @ diartikan sebagai array. Untuk itu digunakan tanda backslash untuk mencetak karakter ini.

Kode PERL:
#!/usr/bin/perl

print "Content-type: text/html \n\n"; # the header
$string = "David paid \$4.34 for Larry\'s shirt.";
$email = "youremail\@youremail.com";
print "$string
";
print "$email
";
print '$string and $email';
Display:
escape.pl
________________________________________

David paid $4.34 for Larry's shirt.
youremail@youremail.com
$string and $email

5. Cara Running
Saat nya megupload program.pl kedalam Web server dan menjalankannya. Setelah mengupload pastikan untuk hak akses user dapat melakukan eksekusi untuk memberikan hak akses guakan perintah chmod program biasanya dengan 755.

PERL - Debugging Program
Jika menggunakn FTP untuk mengupload program harus disertai dengan ASCII. Gunanya agar tidak terdapat karakter aneh akibat meng-Copi ke system operasi yang berbeda.Teknik lain yang tak kalah hebatnya adalah mengisolasi kode yang sedang digunakan.Dapat di lakukan dengan megisolasi bagian yang Error saja.


















6. Contoh Program

































Translate

Mengapa saya memerlukan skrip CGI sih?
CGI merupakan singkatan dari "Common Gateway Interface 'dan cukup sederhana adalah cara untuk mengambil informasi dari satu lokasi (seperti situs web Anda) dan memasukkan ke dalam yang lain (seperti email Anda) dengan beberapa aturan dan tugas-tugas di sepanjang jalan.
Seorang pengunjung tiba pada website anda menempatkan beberapa data ke dalam bentuk dan menyentuh tombol kirim, CGI Script akan mengambil data dan melakukan apa yang Anda minta dengan itu dan kemudian mengirim pengunjung di mana Anda ingin mereka pergi.
Skrip CGI akan menggunakan Perl di server web Anda. Script CGI mengirimkan permintaan ke Perl Software yang melakukan semua pekerjaan.
Jadi, Anda memiliki permintaan halaman web seperti formulir atau counter, ia akan mengirimkan data atau untuk meminta Anda Script CGI Perl Software akan digunakan untuk mengikuti petunjuk dalam CGI Script.

Download script pengujian dan membukanya
Sekarang download file test.zip kami format WinZip komputer Anda, unzip script dan meletakkan file pada tempat Anda dapat menemukannya.
Jadi, Anda sekarang memiliki sebuah file yang bernama test.cgi jangan pernah buka file ini dengan menggunakan perangkat lunak apapun selain NotePad, untuk memastikan yang tidak NotePad WordPad atau Word dan sebagian besar tidak jelas FrontPage. Pada beberapa server UNIX naskah anda harus dalam format UNIX, download sebuah teks editor seperti Notepad + + dan kemudian menyimpan naskah dalam format UNIX.
Jika Anda tidak sengaja membuka file dalam sesuatu selain NotePad silakan menghapus file dan unzip lagi.
Apa masalah besar dengan cara Anda membuka file? CGI script berisi format yang terlihat oleh Anda dan saya, tetapi yang diperlukan untuk menjalankan skrip. Buka di dalam perangkat lunak yang salah, bahkan jika Anda tidak mengubah apa pun akan menyebabkan script untuk berhenti bekerja.
Sekarang menggunakan script NotePad terbuka, klik [file] lalu [terbuka] mengubah [file jenis] untuk [semua file] menemukan dan membuka script.

Menemukan Jalan Untuk Perl
Sekarang anda perlu mengubah baris pertama script Anda untuk mencari jalan untuk Perl, ini adalah software pada server web Anda bahwa script yang akan mengirimkan informasi tersebut kepada.
Perusahaan hosting Anda akan memberi tahu Anda apa yang Path Untuk Perl adalah, yang paling umum tercantum di bawah ini jika Anda memiliki hosting UNIX.

#! / usr / bin / perl
#! / usr / local / bin / perl
#! / usr / sbin / perl
#! / usr / lib / perl

Jika Anda memiliki Windows hosting maka hal-hal yang bisa mendapatkan sedikit rumit, kebanyakan skrip CGI telah ditulis untuk UNIX server. Hampir semua web hosting di server UNIX. Pada banyak Windows hosting server Anda tidak memerlukan Path Untuk Perl sama sekali dan Anda bisa menghapus garis script, jika anda menemukan Anda membutuhkannya maka akan terlihat seperti ini c: \ perl \ bin \perl.exe lagi host Anda akan membiarkan Anda tahu apa itu.
Oke, jadi Anda telah mengubah baris pertama script dan file disimpan.

1 komentar: