KATA PENGANTAR        Puji syukur kami panjatkan kepada Allah SWT atas rahmat dan karunia-Nya, sehinggaModul Praktikum Pem...
DAFTAR ISIKATA PENGANTAR ........................................................................................         ...
BAB 1                DASAR-DASAR PEMROGRAMAN JARINGANPendahuluan       Pada tahun 1972, lembaga riset Departemen Pertahana...
Route                Menampilkan tabel routing IP serta menambah atau                      menghapus rute IP.             ...
Gambar 1.2 Menambahkan kontrol Winsock ke dalam project.        Properties, Methods dan Events yang umum digunakan pada ob...
SendProgress                event       Dipicu selama pengiriman data dilakukan untuk melihat                             ...
BAB 2      PENGIRIMAN DAN PENERIMAAN DATA PADA JARINGANPendahuluan       Pada Bab I telah dijelaskan mengenai cara kerja W...
Private Sub cmdDisconnect_Click()         sck.Close         cmdDisconnect.Enabled = False         cmdListen.Enabled = True...
8. Set property Enabled pada cmdDisconnect menjadi False.9. Set property Locked pada txtChat menjadi True.10. Ketikkan kod...
<komputer10> hai    <komputer15> test nih2. Pada program di atas, nama server chat diletakkan dalam kode program, yaitu   ...
BAB 3                      WEBBROWSER, WININET DAN MAPIPendahuluan        Microsoft telah menyediakan kontrol-kontrol Acti...
WinInet         Metode-metode dasar penggunaan kontrol WinInet adalah sebagai berikut.          Nama              Jenis   ...
Latihan 4.1 Membuat Browser Sederhana1.   Buatlah sebuah proyek dengan nama MyBrowser.vbp.2.   Buat sebuah form bernama fr...
Private Sub cmdViewSource_Click()         Dim sData As String         If Trim(txtAddress.Text) <> "" Then             cmdV...
If mps.SessionID <> 0 then         mpm.SessionID = mps.SessionID         ‘next commands, i.e. sends message         …     ...
BAB 4         PENGENALAN HYPERTEXT MARKUP LANGUAGE (HTML)PENDAHULUAN      HTML kependekan dari Hypertext Markup Language, ...
HEADING       Heading adalah sekumpulan kata yang menjadi judul atau subjudul dalam suatu dokumenHTML. Heading berbeda den...
BARIS BARU (BR)     Tag line break (BR) digunakan untuk menulis teks pada baris berikutnya. Tag <BR>membuat baris baru tan...
Contoh link.html<HTML>         <HEAD>              <TITLE>Link</TITLE>       </HEAD>       <BODY>              <h1>Halaman...
Contoh ordered_list.html<HTML>         <HEAD>              <TITLE>Ordered List</TITLE>       </HEAD>       <BODY>         ...
</HTML>Unordered List        Berbeda dengan ordered list, dalam unordered list tidak dijumpai urutan dalam suatudaftar. Se...
HTML menyediakan tag <IMG> untuk menampilkan gambar dalam halaman web. Dariberbagai macam format gambar yang ada, hanya be...
TABEL      Tabel banyak digunakan karena dapat menampilkan informasi dengan bentuk yang ringkasdan mudah dibaca. Untuk mem...
<HEAD>              <TITLE>Tabel dengan WIDTH dan ALIGN</TITLE>       </HEAD>       <BODY>              <TABLE WIDTH="88%"...
<HTML>         <HEAD>              <TITLE>Table dengan ROWSPAN dan COLSPAN</TITLE>       </HEAD>       <BODY>             ...
Anda tentu sering menjumpai situs yang menyediakan buku tamu bagi pengunjungnya.Formulir tersebut dibuat dengan menggunaka...
<HTML><HEAD>       <TITLE> BUKU TAMU </TITLE></HEAD><BODY>       <H3>              <P ALIGN="center"><font color="#800080"...
BAB 5         PENGENALAN PHP HYPERTEXT PREPROCESSOR (PHP)SEJARAH PHP        PHP adalah salah satu bahasa script yang dieks...
+ Mercury Mail Transport System v4.01b + FileZilla FTP Server 0.9.16c + Webalizer 2.01-10 + Zend Optimizer 3.0.0Cara insta...
Contoh:<?$a=2;$b=3;$c=$a+$b;       echo ("Nilai a=$a dan Nilai b=$b              <br> maka nilai a ditambah b adalah $c");...
Operator dan Struktur Kontrol Program        Dasar dari bahasa PHP adalah bahasa C. Hal ini dimaksudkan agar, para program...
echo("Pointer berada pada elemen $aktif dan nilainya : $nilai<BR>");          prev($negara);     }     end($negara);     $...
haltiga.php<?          // menghapus cookie          setcookie(“nm_pengunjung”);          echo “halaman sudah tidak ada coo...
Contoh:tulisan.txtSaya sekarang sedang belajar php<BR> Asyik lhoTernyata PHP itu mudah,tidak sesulit yang dibayangkan<P>Ba...
echo "<CENTER><FONT SIZE="3" FACE="arial, verdana, helvetica">Anda         pengunjung ke.</FONT></CENTER>" ;         echo ...
BAB 6                    DASAR-DASAR PENGOLAHAN DATA                        MENGGUNAKAN MySQLPENDAHULUAN       Database My...
Contoh:        Mysql>use dbku;                Database Changed    Menghapus databaseSintaks untuk menghapus database adala...
Contoh:       Mysql>INSERT INTO nama_tabel(No,Nama,Email)               ->VALUES(‘1’,’guntur’,’webofficial@afsa-online.org...
Tabel biodata  No     Nama          Umur   Pekerjaan        Email                        Asal  1      Rendi          22   ...
BAB 7           PEMROGRAMAN DATABASE MENGGUNAKAN PHP     Koneksi ke Server Database        Untuk melakukan koneksi ke sebu...
Menampilkan isi tabel        Query SELECT akan menghasilkan kumpulan record (recordset/rowset) yang dapat diolahlebih lanj...
}                // Cetak footer tabel                echo(“</table>”);         } else {             // tampilkan pesan er...
DAFTAR PUSTAKA          •   Agus K., Pemrograman Jaringan Internet Dengan Visual C++, Elex              Media Komputindo, ...
Upcoming SlideShare
Loading in …5
×

Internet Programming v2.0 Comp

6,452 views
6,324 views

Published on

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
6,452
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
109
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Internet Programming v2.0 Comp

  1. 1. KATA PENGANTAR Puji syukur kami panjatkan kepada Allah SWT atas rahmat dan karunia-Nya, sehinggaModul Praktikum Pemrograman Jaringan dan Internet ini dapat diselesaikan. Modul ini adalahpanduan praktikum mata kuliah Pemrograman Web yang merupakan mata kuliah pilihan yangdapat diambil oleh setiap mahasiswa Jurusan Ilmu Komputer di Universitas Pakuan Bogor. Modul praktikum ini terdiri dari 7 bab. Bab I membahas mengenai perintah-perintah umumyang digunakan dalam jaringan, Windows Socket serta perintah dasar untuk koneksi jaringanmenggunakan Windows Socket. Bab II membahas mengenai tipe koneksi jaringan: connection-oriented dan connectionless-oriented serta pengiriman dan penerimaan data melalui jaringan dan internet. Bab III membahas mengenai WinInet, penggunaan kontrol ActiveX WinInet serta kontrolWebBrowser untuk mengakses internet. Selain itu dibahas pula cara pemrograman untuk mengirimemail. Bab IV membahas mengenai Web Browser dan HyperText Markup Language (HTML) untukmemformat tampilan halaman web. Bab V membahas mengenai dasar-dasar pemrograman web menggunakan PHP HypertextPreprocessor (PHP). Bab VI membahas mengenai dasar-dasar pengolahan data menggunakan MySQL sebagaiserver database untuk lingkungan web. Bab VII membahas mengenai dasar-dasar pemrograman database berbasis webmenggunakan PHP Hypertext Preprocessor (PHP) dan MySQL. Di setiap bab disajikan teori-teori yang mendasari pembahasan, kemudian diberikancontoh-contoh program sederhana untuk lebih memahami teori yang diberikan. Modul praktikum ini hanya membahas dasar-dasar pemrograman jaringan dan internetyang dirasa perlu dan banyak digunakan sampai saat modul ini dibuat. Bahkan pada beberapabagian hanya diberikan ulasan singkat mengenai topik yang dibicarakan. Hal ini dilakukan karenatidaklah mungkin untuk menyajikan pemrograman jaringan dan internet dalam sebuah modulpraktikum secara mendetail. Kami menyadari bahwa modul praktikum ini masih jauh dari sempurna. Saran dan kritikyang membangun sangatlah diharapkan. Pertanyaan, saran dan kritik dapat disampaikan langsungmelalui email: masagus_setiawan@yahoo.com, atau melalui website:http://www.masagus.co.cc/leavemsg.html. Bogor, April 2008 Penyusun Foni Agus Setiawan, S.Kom.Laboratorium Komputer ⎯ Ilkom Unpak Bogor i
  2. 2. DAFTAR ISIKATA PENGANTAR ........................................................................................ iDAFTAR ISI ................................................................................................. iiBAB 1 DASAR-DASAR PEMROGRAMAN JARINGAN .......................................... 1BAB 2 PENGIRIMAN DAN PENERIMAAN DATA PADA JARINGAN ........................ 6BAB 3 WEBBROWSER, WININET DAN MAPI .................................................. 10BAB 4 PENGENALAN HYPERTEXT MARKUP LANGUAGE (HTML) ......................... 15BAB 5 PENGENALAN PHP HYPERTEXT PREPROCESSOR (PHP) ........................... 27BAB 6 DASAR-DASAR PENGOLAHAN DATA MENGGUNAKAN MySQL .................. 35BAB 7 PEMROGRAMAN DATABASE MENGGUNAKAN PHP ................................. 39DAFTAR PUSTAKALaboratorium Komputer ⎯ Ilkom Unpak Bogor ii
  3. 3. BAB 1 DASAR-DASAR PEMROGRAMAN JARINGANPendahuluan Pada tahun 1972, lembaga riset Departemen Pertahanan Amerika Serikat, DARPA (DefenseAdvance Research Project Agency) telah berhasil membangun jaringan komunikasi data antarkomputer pertama di dunia yang kemudian diberi nama ARPANET. Sejak saat itu, aplikasi-aplikasiyang digunakan untuk jaringan dan internet mulai dibuat dan diminati. Aplikasi internet yangpertama kali ditemukan adalah FTP, menyusul kemudian email dan telnet. Dunia pemrogramanjarngan dan internet menjadi semakin ramai sekitar tahun 1990-an sampai sekarang seiringdengan ramainya penggunaan internet. Jaringan TCP/IP termasuk internet pertama kali dibangun di atas platform UNIX.Pemrograman jaringan di dalam sistem operasi UNIX menggunakan standar pustaka yang disebutdengan Socket. Microsoft Windows sebagai sebuah sistem operasi yang mendukung protocolTCP/IP pun kemudian menggunakan standar ini. Dalam Windows, implementasi socket ini diberinama WinSock. Tanpa socket, sebuah sistem operasi tidak akan dapat mengimplementasikanprotocol TCP/IP. Penguasaan akan WinSock menjadi pintu gerbang bagi seorang programmerjaringan di lingkungan sistem operasi Windows.Perintah-Perintah Umum Jaringan Perintah-perintah di bawah ini berguna untuk menganalisa dan memperbaiki masalah-masalah yang berhubungan dengan jaringan dan internet. Beberapa dari perintah-perintahtersebut hanya dapat bekerja pada sebuah server dengan sistem operasi Microsoft Windows. Perintah Kegunaan Keterangan Arp Melihat ARP (Address Resolution Protocol) cache pada interface komputer lokal. Hostname Menampilkan nama host komputer lokal. Hanya pada server Windows. Ipconfig Menampilkan konfigurasi jaringan TCP/IP dan DHCP, mengalokasikan, menampilkan dan mendaftarkan nama DNS. Nbtstat Mengecek keadaan NetBIOS yang dipakai dalam koneksi jaringan TCP/IP, mengupdate nama NetBIOS cache dan menentukan registrasi nama dan scope ID. Netstat Menampilkan statistik koneksi pada jaringan TCP/IP Nslookup Mengecek record, domain host aliases, domain host services Hanya pada dan informasi sistem operasi dengan proses query DNS. server Windows. Ping Mengirim ICMP Echo Requests untuk mengecek apakah konfigurasi TCP/IP sudah benar dan sistem TCP/IP pada remote host ada atau tidak. tracert Trace path jalur penyampaian data kepada remote host. pathping Trace path pada remote host dan melaporkan paket yang Hanya pada hilang pada masing-masing router sepanjang jalur server pengiriman data. Windows.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 1
  4. 4. Route Menampilkan tabel routing IP serta menambah atau menghapus rute IP. Tabel 1.1 Perintah-Perintah Umum pada Jaringan TCP/IP. Sintaks lengkap masing-masing perintah dapat dilihat dengan cara mengetik: <perintah>/help.Windows Socket (Winsock) Pada pendahuluan telah disinggung bahwa socket merupakan inti dari pemrogramanjaringan. Winsock merupakan standar API jaringan pada semua varian dari sistem operasiMicrosoft Windows. Sampai saat modul ini ditulis, Winsock mencapai versi 2.0 yang merupakanpenyempurnaan dari versi 1.1. Inti rutin-rutin Winsock berada pada file WS2_32.DLL. Untuk memudahkan pemrogramandengan kontrol ActiveX, Microsoft telah membuat kontrol Winsock yang diimplementasikan padafile MSWINSCK.OCX. Untuk mempermudah pengertian dan pembahasan, contoh-contoh programpada modul ini akan menggunakan kontrol Winsock yang diimplementasikan pada bahasapemrograman Microsoft Visual Basic versi 6.0.Cara Kerja Winsock Misalnya terdapat dua buah komputer: client dan server yang ingin berhubungan.Langkah-langkah untuk mengadakan koneksi, mengirim data sampai pemutusan koneksi dapatdigambarkan sebagai berikut.1. Mula-mula server akan mendengarkan (listen) permintaan koneksi pada nomor port tertentu. Nomor port digunakan untuk membedakan aplikasi pada sebuah sistem komputer.2. Client yang ingin berhubungan meminta koneksi kepada server (connect).3. Server menerima koneksi dari client (accept).4. Selanjutnya baik client atau server dapat saling berkirim (senddata) dan menerima data (getdata).5. Client menutup koneksinya.6. Server mengetahui dan menutup koneksi terhadap client tersebut. 1 2 3 4 6 5 Server Client Gambar 1.1 Cara kerja Winsock.Cara Penggunaan Kontrol Winsock Agar dapat menggunakan kontrol Winsock, Anda harus menambahkan komponen tersebutke dalam project dengan cara mengklik Project|Components… atau menekan Ctrl+T. Beri tandacek kontrol yang bernama Microsoft Winsock Control 6.0, lalu tekan Apply atau OK, maka iconkontrol Winsock akan terlihat pada Toolbar. Selanjutnya, kontrol Winsock dapat digunakan sepertipenggunaan kontrol-kontrol standar lainnya.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 2
  5. 5. Gambar 1.2 Menambahkan kontrol Winsock ke dalam project. Properties, Methods dan Events yang umum digunakan pada obyek Winsock besertafungsinya dapat dilihat pada tabel di bawah ini. Nama Jenis Fungsi Accept method Menerima permintaan koneksi yang datang Bind method Menerbitkan koneksi pada mode UDP (connectionless- oriented) BytesReceived property Mengembalikan nilai banyaknya byte data yang diterima Close event Dipicu ketika socket ditutup Close method Menutup socket Connect method Menerbitkan koneksi pada mode TCP (connection- oriented) ConnectionRequest event Dipicu ketika ada remote host yang meminta koneksi DataArrival event Dipicu ketika ada pengiriman data dari remote host Error event Dipicu ketika terjadi error pada socket GetData method Mengambil data yang datang LocalHostName property Mendapatkan nama komputer lokal LocalIP property Mendapatkan IP komputer lokal LocalPort property Mendapatkan nomor port komputer lokal yang dibuka untuk koneksi Protocol property Menentukan atau mendapatkan jenis koneksi: TCP atau UDP RemoteHost property Mendapatkan nama remote host RemoteHostIP property Mendapatkan IP remote host RemotePort property Mendapatkan nomor port remote host yang dibuka untuk koneksi SendComplete event Dipicu ketika sebuah sesi pengiriman data telah selesai SendData event Dipicu ketika pengiriman data mulai dilakukanLaboratorium Komputer ⎯ Ilkom Unpak Bogor 3
  6. 6. SendProgress event Dipicu selama pengiriman data dilakukan untuk melihat progress-nya State property Mendapatkan status socket Tabel 1.2 Properties, Methods dan Events yang umum digunakan pada obyek Winsock. Penjelasan lebih detail mengenai fungsi rutin-rutin di atas dapat dilihat pada MSDN padatopik Winsock Control.Latihan 1.1 Mendapatkan Nama dan Alamat IP Komputer Lokal1. Buatlah sebuah proyek dengan nama LocalIP.vbp.2. Buat sebuah form bernama frmLocalIP dengan tampilan sebagai berikut. txtHost txtIP sck3. Set properties-nya menjadi sebagai berikut. Obyek Property Nilai txtHost BackColor &H00C0C0C0& txtHost Locked True txtIP BackColor &H00C0C0C0& txtIP Locked True4. Tambahkan kode seperti di bawah ini. Private Sub cmdClose_Click() Unload Me End Sub Private Sub cmdResolve_Click() txtHost.Text = sck.LocalHostName txtIP.Text = sck.LocalIP End Sub Private Sub Form_Load() Show cmdResolve.SetFocus End Sub5. Jalankan program. Tekan tombol Resolve, maka nama komputer dan alamat IP-nya akan tertera.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 4
  7. 7. BAB 2 PENGIRIMAN DAN PENERIMAAN DATA PADA JARINGANPendahuluan Pada Bab I telah dijelaskan mengenai cara kerja Winsock untuk melakukan komunikasidata pada jaringan. Pada dasarnya, socket mengenal dua macam protokol koneksi pada jaringan:TCP yang bersifat connection-oriented, reliable dan byte stream service serta UDP yang bersifatconnectionless-oriented. Connection-oriented berarti koneksi antara client dan server harus terbentuk terlebihdahulu sebelum dilakukan pertukaran data. Reliable berarti TCP menerapkan proses deteksikesalahan dan retransmisi. Sedangkan byte stream service berarti paket dikirimkan dan sampai ketujuan secara berurutan. Pada TCP, untuk menghubungi server digunakan method Connect, sedangkan pada UDPdigunakan method Bind. Latihan di bawah ini menerapkan konsep pengiriman dan penerimaandata pada jaringan menggunakan protokol TCP. Implementasi protokol UDP lebih mudah namunlebih jarang penggunaannya dalam pemrograman jaringan. Untuk menambah wawasan, Andadapat melihat contoh cara pengimplementasian protokol UDP ini pada MSDN pada bagian UsingWinsock Control.Latihan 2.1 Mengirim dan Menerima Data Melalui Jaringan1. Buatlah sebuah proyek bernama TCPServer.vbp.2. Tambahkan sebuah form bernama frmChat dengan tampilan sebagai berikut. txtMsg txtChat3. Set property Enabled pada cmdDisconnect menjadi False.4. Set property Locked pada txtChat menjadi True.5. Ketikkan kode berikut pada tempatnya yang sesuai. Private Const PortNumber = 4000 Private Sub cmdClose_Click() Unload Me End SubLaboratorium Komputer ⎯ Ilkom Unpak Bogor 5
  8. 8. Private Sub cmdDisconnect_Click() sck.Close cmdDisconnect.Enabled = False cmdListen.Enabled = True End Sub Private Sub cmdListen_Click() sck.LocalPort = PortNumber sck.Listen cmdListen.Enabled = False cmdDisconnect.Enabled = True txtMsg.SetFocus End Sub Private Sub cmdSend_Click() sck.SendData txtMsg.Text End Sub Private Sub Form_Load() Show cmdListen.SetFocus End Sub Private Sub sck_Close() sck.Close End Sub Private Sub sck_ConnectionRequest(ByVal requestID As Long) If sck.State <> sckClosed Then sck.Close End If sck.Accept requestID End Sub Private Sub sck_DataArrival(ByVal bytesTotal As Long) Dim sData As String sck.GetData sData txtChat.Text = txtChat.Text & sData & vbCrLf End Sub Private Sub sck_SendComplete() txtMsg.Text = "" End Sub6. Bukalah jendela Microsoft Visual Basic yang baru, lalu buat sebuah proyek bernama TCPClient.vbp.7. Tambahkan sebuah form bernama frmChat dengan tampilan sebagai berikut. txtMsg txtChatLaboratorium Komputer ⎯ Ilkom Unpak Bogor 6
  9. 9. 8. Set property Enabled pada cmdDisconnect menjadi False.9. Set property Locked pada txtChat menjadi True.10. Ketikkan kode berikut pada tempatnya yang sesuai. Private Const RemoteHost = "Masagus" Nama server chat Private Const PortNumber = 4000 Private Sub cmdClose_Click() Unload Me End Sub Private Sub cmdConnect_Click() sck.Connect RemoteHost, PortNumber End Sub Private Sub cmdDisconnect_Click() sck.Close cmdDisconnect.Enabled = False cmdConnect.Enabled = True End Sub Private Sub cmdSend_Click() sck.SendData txtMsg.Text End Sub Private Sub Form_Load() Show cmdConnect.SetFocus End Sub Private Sub sck_Close() sck.Close End Sub Private Sub sck_Connect() cmdConnect.Enabled = False cmdDisconnect.Enabled = True txtMsg.SetFocus End Sub Private Sub sck_DataArrival(ByVal bytesTotal As Long) Dim sData As String sck.GetData sData txtChat.Text = txtChat.Text & sData & vbCrLf End Sub Private Sub sck_SendComplete() txtMsg.Text = "" End Sub11. Jalankan TCPServer.vbp, kemudian tekan tombol Listen.12. Jalankan TCPClient.vbp, kemudian tekan tombol Connect.13. Cobalah untuk saling berkirim data.Tugas1. Pada program di atas, nama komputer yang mengirim data tidak tampak pada pesan yang tampil. Buatlah agar pesan yang tampil juga menampilkan nama komputer yang mengirim pesan, seperti:Laboratorium Komputer ⎯ Ilkom Unpak Bogor 7
  10. 10. <komputer10> hai <komputer15> test nih2. Pada program di atas, nama server chat diletakkan dalam kode program, yaitu konstanta RemoteHost. Buatlah agar ketika client menjalankan program, tampil form untuk menentukan nama server chat yang ingin di-connect, sehingga program lebih fleksibel.3. Buatlah agar client yang terhubung ke server menggunakan nickname seperti pada program chatting. Nickname tersebut harus ikut tampil pada pesan yang diterima, seperti: <hasan> hai <mona> test nihLaboratorium Komputer ⎯ Ilkom Unpak Bogor 8
  11. 11. BAB 3 WEBBROWSER, WININET DAN MAPIPendahuluan Microsoft telah menyediakan kontrol-kontrol ActiveX yang sangat membantu paraprogrammer untuk membuat aplikasi di lingkungan Windows. Termasuk tiga di antaranya adalahMicrosoft Internet Control (WebBrowser), Microsoft Internet Transfer Control (WinInet) danMicrosoft MAPI Controls (MAPI). Di samping WinSock, ketiga kontrol ini sangat berguna dalampemrograman internet. Microsoft Internet Control (WebBrowser) menyediakan kemampuan bagi sebuah aplikasiuntuk melakukan proses menjelajah (browsing). Penjelajahan dapat dilakukan dalam internet,jaringan atau komputer lokal. Microsoft Internet Transfer Control (WinInet) mengimplementasikan dua protokol yangumum digunakan di internet, yaitu: HyperText Transfer Protocol (HTTP) dan File Transfer Protocol(FTP). Menggunakan kontrol ini, Anda dapat terkoneksi ke situs manapun yang menggunakansalah satu dari protokol ini. Tipe koneksi dapat diatur apakah akan menggunakan koneksisynchronous (OpenURL) ataukah asynchronous (Execute). Kegunaan kontrol ini misalnya untuk:1. Membuat aplikasi semacam browser FTP,2. Membuat aplikasi yang secara otomatis men-download file dari sebuah situs FTP, atau3. Mem-parsing kode HTML dari sebuah halaman web. Microsoft Messaging Application Program Interface (MAPI) Controls memberikan fasilitas untukmembuat aplikasi yang berhubungan dengan pengiriman pesan dalam jaringan dan email, sepertimengirim email, menerima email, mengelola attachment dan address book. MAPI adalah kumpulanprosedur-prosedur inti yang memungkinkan sebuah aplikasi untuk berkomunikasi dengan serveremail yang mendukung MAPI. Contohnya adalah Microsoft Exchange yang dapat dihubungi dariclient manapun yang menggunakan driver MAPI.WebBrowser Cara penggunaan kontrol WebBrowser sangat mudah. Metode-metode dasarnya adalahsebagai berikut. Method Fungsi Navigate <URL> Membuka sebuah situs dengan URL <URL> GoBack Kembali ke situs sebelumnya GoForward Bergerak ke situs sesudahnya Stop Menghentikan proses navigasi Refresh Refresh situs yang sedang aktif GoHome Kembali ke homesiteLaboratorium Komputer ⎯ Ilkom Unpak Bogor 9
  12. 12. WinInet Metode-metode dasar penggunaan kontrol WinInet adalah sebagai berikut. Nama Jenis Fungsi AccessType property Mengeset atau mengembalikan nilai jenis akses. icDefault : Mengambil setting default pada registry. icDirect : Kontrol terkoneksi langsung ke internet. icNamedProxy : Kontrol terkoneksi melalui server proxy seperti yang tertera pada property Proxy. Cancel method Membatalkan request yang sedang dilakukan dan menutup koneksi. Execute method Mengeksekusi perintah pada sebuah situs dalam mode asynchronous. GetChunk method Mengambil data yang di-request menggunakan method Execute. OpenURL method Membuka dan mengambil isi dokumen pada sebuah situs dalam mode synchronous. Password property Mengeset atau mengembalikan password yang digunakan untuk logon ke situs. Protocol property Mengeset atau mengembalikan nilai protokol yang digunakan. icUnknown : Unknown icDefault : Protokol default icFTP : File Transfer Protocol icReserved : Dicadangkan untuk penggunaan mendatang icHTTP : Hypertext Transfer Protocol icHTTPS : Secure HTTP Proxy property Mengeset atau mengembalikan nama server proxy yang digunakan untuk koneksi ke internet. StateChanged event Mengembalikan state kontrol saat itu. Event ini dipicu ketika state kontrol berubah. StillExecuting property Mengembalikan nilai True bila kontrol sedang dalam keadaan sibuk (seperti sedang mendownload file). URL property Mengeset atau mengembalikan URL yang digunakan oleh perintah OpenURL atau Execute. UserName property Mengeset atau mengembalikan username yang digunakan untuk logon ke situs. Latihan di bawah ini mengimplementasikan cara penggunaan kedua kontrol di atas kedalam sebuah program. Kontrol WebBrowser digunakan untuk menampilkan halaman sebuah situsdan kontrol WinInet digunakan untuk mengambil source halaman situs tersebut.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 10
  13. 13. Latihan 4.1 Membuat Browser Sederhana1. Buatlah sebuah proyek dengan nama MyBrowser.vbp.2. Buat sebuah form bernama frmBrowser dengan tampilan sebagai berikut. picToolbar txtAddress browser inet3. Set property Align obyek picToolbar menjadi 1 – Align Top.4. Tuliskan kode program di bawah ini pada tempatnya yang sesuai. Private Sub cmdBack_Click() browser.GoBack End Sub Private Sub cmdForward_Click() browser.GoForward End Sub Private Sub cmdGo_Click() If Trim(txtAddress.Text) <> "" Then browser.Navigate txtAddress.Text End If End Sub Private Sub cmdHome_Click() browser.GoHome End Sub Private Sub cmdRefresh_Click() browser.Refresh End Sub Private Sub cmdStop_Click() browser.Stop End SubLaboratorium Komputer ⎯ Ilkom Unpak Bogor 11
  14. 14. Private Sub cmdViewSource_Click() Dim sData As String If Trim(txtAddress.Text) <> "" Then cmdViewSource.Enabled = False Screen.MousePointer = vbHourglass open the URL, get the data... sData = inet.OpenURL(txtAddress.Text) write the data onto clipboard... Clipboard.SetText sData open notepad... Shell "notepad.exe", vbNormalFocus paste the data into notepad... SendKeys "^V", True Screen.MousePointer = vbDefault cmdViewSource.Enabled = True End If End Sub Private Sub Form_Load() browser.Left = 0 browser.Top = picToolbar.Height Show txtAddress.SetFocus End Sub Private Sub Form_Resize() browser.Width = ScaleWidth browser.Height = ScaleHeight - browser.Top End Sub5. Jalankan program. Tes program dengan cara membuka situs-situs internet, tes fungsi dari tombol-tombol yang ada dan lihat source dengan cara mengklik tombol View Source.MAPI Kontrol MAPI sangat luas penggunaannya dalam mengatur segala hal yang berkenaandengan pengiriman dan penerimaan pesan baik dalam jaringan lokal maupun di internet. Dalammodul ini hanya akan dibahas mengenai penggunaan kontrol MAPI untuk mengirim email besertaattachment-nya. Cara penggunaan kontrol ini untuk tujuan lain seperti untuk menerima emaildapat dilihat pada MSDN pada topik Microsoft MAPI Message Control dan Microsoft MAPI SessionControl. Untuk mengirim email menggunakan kontrol MAPI, caranya adalah sebagai berikut.1. Tambahkan komponen Microsoft MAPI Controls ke dalam proyek. Kontrol MAPISession dan MAPIMessages akan nampak pada toolbox.2. Tambahkan kedua kontrol ini pada form, misalnya namanya mps (MAPISession) dan mpm (MAPIMessages).3. Pertama kali Anda harus logon ke sebuah server mail. Jika informasi mengenai nama server mail, username dan password belum diset pada mail-client Anda yang mendukung MAPI (misalnya Outlook Express), Windows akan meminta Anda untuk mengesetnya terlebih dahulu. Setelah itu Anda dapat logon menggunakan method SignOn sebagai berikut: mps.SignOn4. Jika MAPI berhasil connect ke server, aplikasi akan memperoleh sebuah SessionID yang nilainya tidak 0 yang dapat digunakan untuk mengirim email. Selanjutnya Anda harus mengeset SessionID yang didapat untuk digunakan oleh obyek mpm.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 12
  15. 15. If mps.SessionID <> 0 then mpm.SessionID = mps.SessionID ‘next commands, i.e. sends message … … Else ‘error occured End If5. Selanjutnya untuk membuat email yang baru, Anda harus memanggil method Compose dan mengeset property-property mpm seperti di bawah ini. new message... mpm.Compose mpm.RecipAddress = txtSendTo.Text mpm.MsgSubject = txtSubject.Text mpm.MsgNoteText = txtContent.Text If Trim(txtAttachment.Text) <> "" Then ‘add the attachment... mpm.AttachmentPathName = txtAttachment.Text End If6. Untuk mengirim email tersebut, panggil method Send. On Error Resume Next send the message... mpm.Send If Err Then Msg = "Error occured while trying to send the message." & vbCrLf Msg = Msg & Err.Description MsgBox Msg, vbCritical End If7. Setelah selesai menggunakan session, Anda dapat memutus hubungan dengan server mail dengan cara memanggil method SignOff. log off from mail server... mps.SignOffTugas Buatlah sebuah aplikasi yang dapat digunakan untuk mengirim email dengan langkah-langkah seperti yang telah diuraikan di atas. Setelah Anda berhasil mengirim email, beberapa saatkemudian periksalah apakah email tersebut sampai ke alamat tujuan atau tidak. Selamatmencoba!Laboratorium Komputer ⎯ Ilkom Unpak Bogor 13
  16. 16. BAB 4 PENGENALAN HYPERTEXT MARKUP LANGUAGE (HTML)PENDAHULUAN HTML kependekan dari Hypertext Markup Language, yaitu suatu bahasa yang digunakanuntuk menulis halaman web. HTML dirancang untuk digunakan tanpa tergantung pada suatuplatform tertentu. Dokumen HTML adalah suatu dokumen teks biasa, dan disebut markup languagekarena mengandung tag tertentu yang digunakan untuk menentukan tampilan suatu teks datingkat kepentingan dari teks tersebut dalam suatu dokumen. Pada dokumen HTML yang termasuksistem hypertext, kita tidak harus membaca dokumen tersebut secara urut dari atas kebawah atausebaliknya, tetapi kita dapat menuju topik tertentu secara langsung dengan menggunakan tekspenghubung yang akan membawa Anda ke suatu topik atau dokumen lain secara langsung. HTML merupakan pengembangan dari standar penformatan dokumen teks yaitu SGML(Standard Generalized Markup Language). Sejak awal perkembangannya sampai sekarang ini telahtersedia bermacam-macam level (versi) HTML, yaitu HTML 1.0, HTML 2.0, HTML 3.0, dan HTML4.0. Untuk menjalankan dokumen HTML harus menggunakan web browser.STRUKTUR DOKUMEN HTML Secara sederhana, HTML terdiri dari dua bagian yaitu Header dan Body. Struktur HTMLdiapit oleh tag awal <HTML> dab tag akhir </HTML>. Standar penulisannya adalah:<HTML> <HEAD> Deskripsi Dokumen </HEAD> <BODY> Isi Dokumen </BODY></HTML> Untuk lebih jelasnya, jalankan editor teks Anda dan buatlah program berikut ini:Contoh tes.html<HTML> <HEAD> <TITLE>Struktur Dokumen HTML</TITLE> </HEAD> <BODY> Hello World </BODY></HTML> Tag <TITLE> digunakan untuk memberi judul dokumen HTML. Judul ini dapat Anda lihatpada pojok kiri atas (title bar) brower. Ketika orang ingin mem-bookmark web Anda, maka judulinilah yang akan disimpan.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 14
  17. 17. HEADING Heading adalah sekumpulan kata yang menjadi judul atau subjudul dalam suatu dokumenHTML. Heading berbeda dengan tag <TITLE> yang tidak dapat muncul dalam halaman web. HTMLmenyediakan enam tingkatan heading. Heading level 1 biasanya untuk judul utama.Contoh heading.html<HTML> <HEAD> <TITLE>Heading</TITLE> </HEAD> <BODY> <H1>HEADING level 1</H1> <H2>HEADING level 2</H2> <H3>HEADING level 3</H3> <H4>HEADING level 4</H4> <H5>HEADING level 5</H5> <H6>HEADING level 6</H6> </BODY></HTML> PARAGRAF Untuk membuat paragraf, digunakan tag <P>. Setelah tag <P>, anda bisa menulis isiparagraf dan paragraf itu harus diakhiri dengan tag penutup </P>. Anda bisa mengatur posisiparagraf dengan menggunakan atribut ALIGN. Atribut ALIGN diikuti dengan posisi yang diinginkan.Left untuk meratakan paragraf kiri, center untuk meratakan paragraf di posisi tengah horisontaldan right untuk meratakan paragraf di kanan.Contoh paragraf.html<HTML> <HEAD> <TITLE>paragraf</TITLE> </HEAD> <BODY> <P ALIGN=”right”>Beberapa tahun yang lalu, seorang hartawan meninggal dunia sedangkan ia tidakmemiliki ahli waris. Kepada pengacaranya, ia meninggalkan dua buah surat wasiat yangdisegel. Yang sebuah berisi permintaan agar jenazahnya dikuburkan pada jam empatdini hari. surat yang kedua belum diketahui isinya karena disampulnya tertulis pesanagar dibuka seusai pemakaman jenazah. <P ALIGN=”center”>Sesuai dengan wasiat, jenazah itu dikebumikan pada pukul empat dini hari. karenatidak lazimnya waktu pemakaman pada jam tersebut, yang ikut mengantar jenazahnyahanya empat orang kawannya yang paling setia. <P ALIGN=”left”>Seusai pemakaman, surat wasiat yang kedua dibuka. Betapa terkejutnya pengacaraketika membaca isinya, ialah wasiat bahwa seluruh harta warisan dibagi rata kepadaorang-orang yang mengantarkan jenazahnya pada pemakaman. Dengan demikian, yangberhak memperoleh harta yang banyak itu hanya empat orang, sebagai imbalan bagikesetiaan mereka. </P> </BODY></HTML>Laboratorium Komputer ⎯ Ilkom Unpak Bogor 15
  18. 18. BARIS BARU (BR) Tag line break (BR) digunakan untuk menulis teks pada baris berikutnya. Tag <BR>membuat baris baru tanpa memberi baris kosong.Contoh br.html<HTML><HEAD> <TITLE>Line Break</TITLE></HEAD><BODY> <P>banyak cara yang dapat digunakan untuk melakukan instalasi FreeBSD. Namunada tiga cara yang paling sering dilakukan, yaitu:<BR> Instalasi melalui FTP<BR> Instalasi melalui CDROM<BR> Instalasi melalui partisi DOS</BODY></HTML> FONT Untuk mengatur huruf pada dokumen HTML digunakan tag <FONT>. Tag <FONT> memilikiatribut untuk mengatur ukuran huruf, jenis huruf yang digunakan dan warna huruf.Atribut SIZE digunakan untuk mengatur ukuran font. Nilai font dimulai dengan nilai 1 untuk ukuranhuruf terkecil dan nilai 7 untuk ukuran paling besar.Atribut FACE digunakan untuk mengatur jenis huruf yang diinginkan. Atribut FACE harus diisidengan string jenis font seperti Arial, Times New Roman, Verdana, dan sebagainya.Atribut COLOR digunakan untuk mengatur warna font yang diinginkan. Untuk memberi nilai padaatribut color ada dua cara. Cara pertama dengan menyebutkan nama warna seperti red, green danblue. Sedangkan cara kedua adalah dengan menggunakan nilai RGB (Red Geen Blue) dari suatuwarna, misalnya #FF0000 untuk red, #00FF00 untuk green dan #0000FF untuk blue.Contoh font.html<HTML> <HEAD> <TITLE>Font</TITLE> </HEAD> <BODY> <FONT SIZE=1 FACE=”Arial” COLOR=”RED”>FONT 1</FONT> <FONT SIZE=2 FACE=”Tahoma” COLOR=”#FF0000”>FONT 2</FONT> <FONT SIZE=3 FACE=”Verdana” COLOR=”BLUE”>FONT 3</FONT> </BODY></HTML> LINK Perintah anchor (A) digunakan untuk membuat suatu link. Untuk membuat link kedokumen HTML lain digunakan perintah <A HREF = “nama_dokumen”> Teks pada browser </A>. Anda juga bisa membuat link dalam sebuah dokumen HTML. Untuk itu, perlu disediakannama anchor lokasi tujuan dari link tersebut. Nama anchor dibuat dengan menambahkan atributNAME pada tag <A>. Misalnya <A NAME = “abbiati”>Abbiati</A>. Cara melakukan link ke bagiantersebut adalah <A HERF = “#nama_anchor”> teks pada browser</A>.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 16
  19. 19. Contoh link.html<HTML> <HEAD> <TITLE>Link</TITLE> </HEAD> <BODY> <h1>Halaman Utama</h1> Silakan klik pada link-link berikut :<br> <a href="halx.html">Halaman X</a><br> <a href="haly.html">Halaman Y</a> </BODY></HTML>Contoh halx.html<HTML> <HEAD> <TITLE>Halaman X</TITLE> </HEAD> <BODY> <h1>HALAMAN X</h1> <a href="link.html">Kembali</a> </BODY></HTML>Contoh haly.html<HTML> <HEAD> <TITLE>Halaman Y</TITLE> </HEAD> <BODY> <h1>HALAMAN Y</h1> <a href="link.html">Kembali</a> </BODY></HTML> LISTAda dua jenis daftar atau list, yaitu:• Daftar Terurut (Ordered List)• Daftar Tidak Berurut (Unordered List)Ordered List Ordered List digunakan untuk membuat daftar di mana tiap bagiannya memiliki nomorsecara berurut. Ordered List dimulai dengan tag <OL> dan diakhiri dengan tag penutup </OL>.Untuk menyatakan tiap bagiannya digunakan tag <LI> di mana tag ini tidak memerluan tagpenutup. Dengan menggunakan ordered list Anda tidak perlu memberi nomor untuk tiap-tiapbagian. Perintah tersebut akan secara otomatis diproses oleh browser. Perhatikan contoh berikutini:Laboratorium Komputer ⎯ Ilkom Unpak Bogor 17
  20. 20. Contoh ordered_list.html<HTML> <HEAD> <TITLE>Ordered List</TITLE> </HEAD> <BODY> Empat besar pemain termahal di dunia <OL> <LI>Luis Figo <LI>Hernan Crespo <LI>Christian Vieri <LI>David Bechkam </OL> </BODY></HTML> Ketika anda mengunakan perintah ordered list, maka default dari penomoran adalah1,2,3,... Anda bisa mengubah nomor tersebut dengan menggunakan atribut TYPE pada tag <OL>.Nilai atribut TYPE beserta fungsinya dapat anda lihat pada tabel berikut ini: Atribut Fungsi TYPE=1 Daftar berurutan dengan nomor 1,2,3 (atribut ini adalah default dari ordered list) TYPE=I Daftar berurutan dengan menggunakan bilangan romawi huruf besar (I,II,III,...) TYPE=i Daftar berurut dengan mengunakan bilangan romawi huruf kecil (i,ii,iii,...) TYPE=A Daftar berurut dengan menggunakan abjad besar (A,B,C,...) TYPE=a Daftar berurut dengan menggunakan abjad kecil (a,b,c,...) Selain mengubah jenis penomoran, HTML juga menyediakan perintah untuk menentukannilai awal penomoran. Atribut yang digunakan adalah START=n, di mana n adalah nilai awalpenomoran. Contoh penggunaan atribut TYPE dan START adalah sebagai berikut.Contoh ordered_list2.html<HTML> <HEAD> <TITLE>OL dengan atribut</TITLE> </HEAD> <BODY> <OL TYPE=A> <LI>Daftar Tiga pemain termahal di dunia <OL TYPE=I> <LI>Luis Figo <LI>Hernan Crespo <LI>Christian Vieri </OL> <LI>Urutan Empat sampai Enam <OL TYPE=1 START=5> <LI>Denilson <LI>Gabriel Batigol <LI>Ronaldo </OL> </OL> </BODY>Laboratorium Komputer ⎯ Ilkom Unpak Bogor 18
  21. 21. </HTML>Unordered List Berbeda dengan ordered list, dalam unordered list tidak dijumpai urutan dalam suatudaftar. Setiap bagian dari unordered list ditandai dengan tanda bullet. Tanda bullet menjadi defaultdalam unordered list. Untuk membuat daftar dengan tanda ini digunakan tag awal <UL> dan tagpenutup </UL>. Sama seperti ordered list, untuk tiap-tiap bagiannya digunakan tag <LI> tanpatag penutup. Perhatikan contoh berikut ini:Contoh unordered_list.html<HTML> <HEAD> <TITLE>Unordered List</TITLE> </HEAD> <BODY> Empat Kota besar di Indonesia <UL> <LI>Jakarta <LI>Bandung <LI>Yogyakarta <LI>Surabaya </UL> </BODY></HTML> Selain default tanda bullet, Anda bisa menggunakan tanda cakram, lingkaran, atau kotak.Caranya dengan menggunakan atribut TYPE pada tag <UL>. Untuk lebih jelasnya lihatlah padadaftar berikut ini: Atribut Fungsi TYPE=circle Tanda lingkaran TYPE=disk Tanda cakram TYPE=square Tanda kotakContoh penggunaan atribut TYPE di atas adalah:Contoh unordered_list2.html<HTML> <HEAD> <TITLE>UL dengan atribut</TITLE> </HEAD> <BODY> Perguruan Tinggi Negeri tertua di Indonesia <UL TYPE=square> <LI>Universitas Gadjah Mada <LI>Universitas Indonesia <LI>Institut Teknologi Bandung <LI>Institut Pertanian Bogor <LI>Universitas Airlangga </UL> </BODY><HTML> GRAFIKLaboratorium Komputer ⎯ Ilkom Unpak Bogor 19
  22. 22. HTML menyediakan tag <IMG> untuk menampilkan gambar dalam halaman web. Dariberbagai macam format gambar yang ada, hanya beberapa saja yang bisa digunakan dalammembuat halaman web. Format gambar yang paling sering digunakan adalah GIF, JPEG/JPG danPNG. Standar penulisan tag <IMG> adalah:<IMG SRC=”file_gambar”ALT=”nama_alternatif”>Atribut SRC digunakan untuk menentukan sumber gambar. Atribut ALT berfungsi sebagai tekspengganti gambar untuk browser yang tidak bisa mendukung grafik (misalnya lynx) atau apabilaclient sengaja mematikan fasilitas pemanggilan gambar (misalnya Auto Load Images padaNestcape). Perhatikan contoh berikut:Contoh gambar.html<HTML> <HEAD> <TITLE>Gambar</TITLE> </HEAD> <BODY> <img src="Bunga.jpg" width="82" height="68" alt="Gambar Bunga" /> </BODY></HTML>Berikut beberapa atribut pada tag <IMG> yang biasanya digunakan dalam halaman-halaman web: Atribut Fungsi Border Memberikan suatu border atau batas pada gambar. Default border=0. Height, Width Menentukan tinggi dan lebar suatu gambar dalam ukuran pixel. HSPACE, Menentukan jarak spasi horisontal dan spasi vertikal antara gambar dengan obyek di VSPACE sekitarnya. ALIGN Mengatur perataan gambar terhadap obyek di sekelilingnya. Nilainya bisa berupa left, center, right, bottom, top, dan middle.Perhatikan contoh pengunaan beberapa atribut di atas dalam contoh program di bawah ini:Contoh gambar2.html<HTML> <HEAD> <TITLE>Atribut IMG</TITLE> </HEAD> <BODY> <P>Gambar Bunga, VSPACE = 20 <BR> <IMG SRC=”bunga.jpeg” WIDTH=”270” HEIGHT=”70” ALT=”Gambar Bunga” BORDER=”2” HSPACE=”20” VSPACE=”20”> </P> </BODY></HTML>Laboratorium Komputer ⎯ Ilkom Unpak Bogor 20
  23. 23. TABEL Tabel banyak digunakan karena dapat menampilkan informasi dengan bentuk yang ringkasdan mudah dibaca. Untuk membuat tabel digunakan tag awal <TABLE> dan tag penutup</TABLE>. Tag <TABLE> memiliki beberapa bagian penting, yaitu:• <CAPTION>.....</CAPTION> digunakan untuk membentuk judul tabel. Judul tabel ini akan terletak di luar tabel, bisa di bagian atas atau bagian bawah tabel.• <TH>.....</TH> berfungsi untuk meletakkan judul tabel di bagian paling atas atau paling kiri dari suatu tabel. Tabel header akan dicetak dalam huruf tebal.• <TR>.....</TR> dipakai untuk membentuk baris pada suatu tabel.• <TD>.....</TD> digunakan sebagai tempat menulis data atau informasi pada tabel.Perhatikan contoh penggunaan tabel berikut ini:Contoh tabel.html<HTML> <HEAD> <TITLE>Tabel</TITLE> </HEAD> <BODY> <TABLE border="1"> <CAPTION>Daftar Harga</CAPTION> <TR> <TH>Nama Barang</TH> <TH>Harga</TH> </TR> <TR> <TD>Buku</TD> <TD>Rp.2500,-</TD> </TR> <TR> <TD>Pensil</TD> <TD>Rp.2000,-</TD> </TR> <TR> <TD>Penggaris</TD> <TD>Rp.3000,-</TD> </TR> </TABLE> </BODY></HTML>Align dan Width Penataan horizontal tabel menggunakan atribut ALIGN. ALIGN dapat bernilai left untukperataan di kiri, center untuk perataan di tengah, dan right untuk penataan di kanan. Sedangkanuntuk perataan vertikal menggunakan atribut VALIGN. VALIGN dapat bernilai top untuk penataandi atas, middle untuk penataan di tengah dan bottom untuk penataan di bawah. Lebar tabel biasanya diatur dengan mengunakan atribut WIDTH. Nilai WIDTH dapatdinyatakan dengan persen (%) yang berarti menyatakan lebar tabel dalam persentase ataudinyatakan dengan pixel yang berarti ukuran sesungguhnya dari tabel. Perhatikan contoh berikut:Contoh tabel_align.html<HTML>Laboratorium Komputer ⎯ Ilkom Unpak Bogor 21
  24. 24. <HEAD> <TITLE>Tabel dengan WIDTH dan ALIGN</TITLE> </HEAD> <BODY> <TABLE WIDTH="88%" HEIGHT="210" BORDER="1"> <TR> <TD WIDTH="30%" HEIGHT="110" VALIGN="top"> VALIGN=&quot;top&quot;<br> </TD> <TD WIDTH="34%" HEIGHT="110" VALIGN="middle"> VALIGN=&quot;middle&quot;<br> </TD> <TD WIDTH="36%" HEIGHT="110" VALIGN="bottom"> VALIGN=&quot;bottom&quot;</TD> </TR> <TR> <TD WIDTH="30%" HEIGHT="100" ALIGN="left"> ALIGN=&quot;left&quot;</TD> <TD WIDTH="34%" HEIGHT="100" ALIGN="center"> ALIGN=&quot;center&quot;</TD> <TD WIDTH="36%" HEIGHT="100" ALIGN="right"> ALIGN=&quot;right&quot;</TD> </TR> </TABLE> </BODY></HTML>CELLSPACING dan CELLPADDING Atribut CELLSPACING digunakan untuk menentukan jumlah spasi yang terdapat di antaradua buah sel. CELLPADDING berfungsi untuk mengatur jumlah spasi yang terdapat di antara batas/border dengan isi atau teks di dalam teks tersebut. Berikut ini adalah contoh program yangmenggunakan atribut di atas.Contoh tabel_cell.html<HTML> <HEAD> <TITLE>Tabel dengan CELLSPACING dan CELLPADDING</TITLE> </HEAD> <BODY> <TABLE BORDER=”3” CELLPADDING=”10” CELLSPACING=”10” WIDTH=”85%”> <TR> <TD WIDTH=”43%”>baris 1, kolom 1</TD> <TD WIDTH=”57%”>baris 1, kolom 2</TD> </TR> <TR> <TD WIDTH=”43%”>baris 2, kolom 1</TD> <TD WIDTH=”57%”>baris 2, kolom 2<</TD> </TR> </TABLE> </BODY></HTML>COLSPAN dan ROWSPAN Atribut COLSPAN digunakan untuk menggabungkan beberapa kolom menjadi satu kolom.Sedangkan atribut ROWSPAN dipakai untuk mengabungkan beberapa baris menjadi satu.Perhatikan contoh berikut:Contoh tabel_span.htmlLaboratorium Komputer ⎯ Ilkom Unpak Bogor 22
  25. 25. <HTML> <HEAD> <TITLE>Table dengan ROWSPAN dan COLSPAN</TITLE> </HEAD> <BODY> <TABLE BORDER=”3” CELLSPADING=”5” CELLSPACING=”5” WIDTH=”85%”> <TR> <TD WIDTH=”43%” ROWSPAN=”2”>baris 1, kolom 1<P>baris 2, kolom 1</TD> <TD WIDTH=”57%”>baris 1, kolom 2</TD> </TR> <TR> <TD WIDTH=”100” COLSPAN=”2”>baris 3, kolom 1<P>baris 3, kolom 2</TD> </TR> </TABLE> </BODY></HTML>Warna Tabel Agar lebih menarik, Anda bisa memberi warna pada tabel. Selain warna latar belakang,border tabel juga bisa ditentukan warnanya. Untuk latar belakang gunakan atribut BGCOLOR,sedangkan untuk memberi warna pada border gunakan atribut BORDERCOLOR. Perhatikan contohberikut ini:Contoh tabel_color.html<HTML><HEAD> <TITLE> Table dengan ROWSPAN dan COLSPAN</TITLE></HEAD><BODY> <TABLE BORDER=”3” CELLPADDDING=”3” CELLSPACING=”5” WIDTH=”100” BORDERCOLOR=”FF0000”> <TR> <TD WIDTH=”50 %” BGCOLOR=”#808080”>&nbsp;</TD> <TD WIDTH=”50%”>&nbsp;</TD> </TR> <TR> <TD WIDTH=”50 %”>&nbsp;</TD> <TD WIDTH=”50%” BGCOLOR=”#008080”>&nbsp;</TD> </TR> <TABLE> <TABLE BORDER=”3” CELLPADDING=”3” CELLSPACING=”5” WIDTH=”100%” BORDERCOLORLIGHT=”#008080” BORDERCOLORDARK=”#800080”> <TR> <TD WIDTH=”100%”>&nbsp;</TD> </TR> </TABLE></BODY></HTML>Form dan Input Tag <FORM> dan <INPUT> digunakan bersama-sama untuk meminta masukan dari useruntuk kemudian dikirim ke server. Tag <FORM> membuat kerangkanya sedangkan tag <INPUT>menyediakan elemen antarmuka dengan user.FormLaboratorium Komputer ⎯ Ilkom Unpak Bogor 23
  26. 26. Anda tentu sering menjumpai situs yang menyediakan buku tamu bagi pengunjungnya.Formulir tersebut dibuat dengan menggunakan elemen form dan input. Standar penulisan Formadalah:<FORM METHOD=”<[POST/GET]>” ACTION=”<URL>”> <INPUT ... <INPUT ...</FORM> Atribut METHOD memiliki dua nilai POST dan GET. Metode GET mengirimkan data padaserver dengan cara meletakkan data pada bagian akhir URL (Uniform Resource Locator) yangditunjuk. Metode POST mengirimkan datanya secara terpisah dari URLnya. Jika data masukbanyak, lebih baik digunakan metode POST. Atribut ACTION berisi URL dari program yangdipanggil oleh form tersebut.TextBox TextBox merupakan salah satu jenis kontrol untuk memasukkan data. HTML menyediakantag <INPUT> dengan atribut TYPE=”text” untuk membuat kotak input. Jika TYPE diberi nilai text,maka masukan hanya bisa menerima satu baris data. Selain atribut TYPE, pada tag <INPUT> juga bisa ditampilkan atribut NAME untuk memberinama input tersebut, atribut VALUE untuk memberi nilai suatu input, dan atribut SIZE untukmenentukan batas terpanjang sebuah masukan. Nilai VALUE juga menjadi tulisan yang tampakpada browser. Anda bisa menyembunyikan masukan yang ditulis user dengan memberi nilaiTYPE=”password”. Masukan akan menjadi karakter ”*”.CheckBox Selain atribut TYPE bernilai text dan password, Anda bisa memberi nilai atribut TYPEdengan checkbox yang digunakan untuk memberi user pilihan. Dengan menggunakan checkbox,user bisa memilih salah satu pilihan, lebih dari satu pilihan, atau tidak memilih semua pilihan.Radio Jika atribut TYPE=”checkbox” diganti dengan TYPE=”radio”, maka user harus memilih salahsatu pilihan yang tersedia. User tidak bisa memilih kurang atau lebih dari satu pilihan. AtributCHECKED memberi tanda bahwa pilihan tersebut sedang diaktifkan.Submit dan Reset Setiap form harus memiliki tombol Submit atau tombol Reset. Lebih baik jika keduanyadigunakan bersama. Kedua tombol diatas dibuat dengan menggunakan atribut TYPE=”submit” danTYPE=”reset”. Tombol submit digunakan ketika user telah selesai mengisi formulir dan inginmengirimkan ke server. Sedangkan tombol reset digunakan ketika user ingin menghapus semuamasukan yang telah ditulis.Perhatikan contoh di bawah ini:Contoh form.htmlLaboratorium Komputer ⎯ Ilkom Unpak Bogor 24
  27. 27. <HTML><HEAD> <TITLE> BUKU TAMU </TITLE></HEAD><BODY> <H3> <P ALIGN="center"><font color="#800080"><b>BUKU TAMU</b></font></P> </H3> <FORM METHOD="POST" ACTION="thanks.html"> <TABLE BORDER="1" CELLPADDING="2" WIDTH="100%" style="border-collapse: collapse" bordercolor="#111111" cellspacing="0"> <TR> <TD WIDTH="8%" bgcolor="#0066FF">Nama</TD> <TD WIDTH="4%" bgcolor="#6699FF">:&nbsp; <INPUT TYPE="text" NAME="nama1" SIZE="20"></TD> </TR> <TR> <TD WIDTH="8%" bgcolor="#0066FF">Email</TD> <TD WIDTH="4%" bgcolor="#6699FF">:&nbsp; <INPUT TYPE="text" NAME="email1" SIZE="20"></TD> </TR> <TR> <TD WIDTH="8%" bgcolor="#0066FF">Asal</TD> <TD WIDTH="4%" bgcolor="#6699FF">:&nbsp; <INPUT TYPE="text" NAME="asal1" SIZE="20"></TD> </TR> <TR> <TD WIDTH="8%" bgcolor="#0066FF">Homepageku : </TD> <TD WIDTH="88%" bgcolor="#6699FF"><INPUT TYPE="radio" VALUE="V1" CHECKED NAME="R1">Bagus Sekali<BR> <INPUT TYPE="radio" VALUE="V2" NAME="R1">Bagus<BR> <INPUT TYPE="radio" VALUE="V3" NAME="R1">Biasa Saja<P>&nbsp;</TD></TR> </TABLE> <P><INPUT TYPE="submit" VALUE="Kirim" NAME="B1"> <INPUT TYPE="reset" VALUE="Batal" NAME="B2"</P> </FORM></BODY></HTML>thanks.html<HTML> <HEAD> <TITLE> Terima Kasih Telah Mengisi Guest Book </TITLE> </HEAD> <BODY TEXT=”#000000 BGCOLOR=”6699FF”> <P><font color="#333399"><B>Terima kasih Anda telah mengisi buku tamu kami<BR> kami akan segera mengirim balasannya ke email Anda.</B></FONT></P> </BODY></HTML>Laboratorium Komputer ⎯ Ilkom Unpak Bogor 25
  28. 28. BAB 5 PENGENALAN PHP HYPERTEXT PREPROCESSOR (PHP)SEJARAH PHP PHP adalah salah satu bahasa script yang dieksekusi di sisi server web (server-side)yang didesain khusus untuk aplikasi web sepert halnya JSP, Perl (.pl), dan Asp. PHP dapatdisisipkan diantara bahasa HTML (embedded). Script PHP dieksekusi di server danmenghasilkan output (if any) dalam bentuk HTML yang dikirimkan oleh server web ke client.Dengan cara ini, kode PHP yang disimpan di server tidak akan terlihat oleh client. PHP dibuat pertama kali oleh satu orang yaitu Rasmus Lerdorf, yang pada awalnyadibuat untuk menghitung jumlah pengunjung pada homepagenya. Diawal Januari 2001, PHPtelah dipakai lebih dari 5 juta domain diseluruh dunia, dan akan terus bertambah karenakemudahan dan kegratisan aplikasi PHP ini dibandingkan dengan bahasa server-side yanglain. PHP termasuk dalam Open Source Product. Jadi anda dapat merubah source code danmendistribusikannya secara bebas. PHP juga diedarkan secara gratis. Anda bisamendapatkannya secara gratis. PHP juga dapat berjalan di berbagai server web semisal IIS,Apache, PWS, dll.INSTALASI PHP Pada bagian ini akan dibahas cara instalasi PHP. Disini akan dijelaskan instalasi PHPdengan menggunakan XAMPP yang didalamnya terdapat: + Apache 2.2.2 + MySQL 5.0.21 + PHP 5.1.4 + PHP 4.4.2-pl1 + PEAR + PHP-Switch win32 1.0 (use the "php-switch.bat") + XAMPP Control Version 2.3 from www.nat32.com + XAMPP Security 1.0 + SQLite 2.8.15 + OpenSSL 0.9.8b + phpMyAdmin 2.8.1 + ADOdb 4.80Laboratorium Komputer ⎯ Ilkom Unpak Bogor 26
  29. 29. + Mercury Mail Transport System v4.01b + FileZilla FTP Server 0.9.16c + Webalizer 2.01-10 + Zend Optimizer 3.0.0Cara instalasi: 1. Jalankan file setup XAMPP dan exctract ke C: 2. Jalankan setup.bat yang terdapat pada C:XAMPP 3. Jika instalasi berjalan dengan sukses jalan “apache_start.bat” untuk menjalankan apache dan “mysql_start.bat”untuk menjalankan mysql. Anda juga dapat menggunakan “xampp- control.exe” untuk melakukan hal serupa. 4. Jalankan web browser dan ketik http://localhost untuk melihat XAMPP telah berjalan dengan baik. 5. Untuk mematikan apache dan mysql buka file “apache_stop.bat” dan “mysql_stop.bat”.MENULISKAN SCRIPT PHP Menuliskan PHP dalam HTML Seperti yang telah dituliskan sebelumnya bahwa PHP dapat ditulis (embed) ddidalam HTML,Untuk penulisannya dalam HTML, seperti halnya kode kode dalam HTML selalu diawali dengansuatu kode dan diakhiri dedngan kode tertentu maka PHP pun mempunyainya. Kode PHP diawalidengan tanda <? atau <?php dan diakhiri dengan tanda ?>. Sedangkan untuk menambahkankomentar diawali dengan tanda /* dan diakhiri dengan */ atau menggunakan tanda //. Yangberarti tulisan tidak akan terbaca atau tidak akan tereksekusi.Contoh:<HTML><?php/* Teks ini tidak akan terbaca */// Untuk teks ini juga tidak terbaca echo (“Teks ini dicetak menggunakan PHP”);?></HTML> Variabel dalam PHP Setiap bahasa pemrograman tentu mempunyai suatu variabel. Variabel berfungsi untukmengkompilasi dan menyimpan beberapa bit data, sehingga untuk memanggil suatu data kitatinggal memanggil variabel tersebut. Variabel dalam PHP selalu dimulai dengan tanda ‘$’. Tidak terpengaruh apakah datamerupakan integer, real maupun string, PHP akan secara otomatis mengkonversi data menuruttipenya.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 27
  30. 30. Contoh:<?$a=2;$b=3;$c=$a+$b; echo ("Nilai a=$a dan Nilai b=$b <br> maka nilai a ditambah b adalah $c");?> Menerima Input dari Form Dalam form selalu ada value yang nantinya akan dijadikan sebuah variabel oleh PHP.Variabel inilah yang akan diproses oleh PHP tergantung pada penggunaan program PHP tersebut.Misalkan saja kita mempunyai program seperti berikut:Contoh form_input.php<HTML><HEAD><TITLE> Variabel dari Form </TITLE></HEAD><BODY><FORM METHOD=POST> Nama : <INPUT TYPE="Text" NAME="nama"><BR> Password : <INPUT TYPE="Password" NAME="pass"><BR> Jenis Kelamin <BR> <INPUT TYPE="Radio" NAME="kelamin" VALUE="pria">Pria <INPUT TYPE="Radio" NAME="kelamin" VALUE="wanita">Wanita<BR> Hobi : <BR> <INPUT TYPE="Checkbox" NAME="hobi" VALUE="tidur">Tidur<BR> <INPUT TYPE="Checkbox" NAME="hobi" VALUE="bersepeda">Bersepeda</BR> <INPUT TYPE="Checkbox" NAME="hobi" VALUE="lain">Lainnya</BR> <INPUT TYPE="submit" VALUE="Kirim"> <INPUT TYPE="Reset" VALUE="Ulangi"></FORM><? $nama = isset($_REQUEST[“nama”]) ? $_REQUEST[“nama”] : “”; $pass = isset($_REQUEST[“pass”]) ? $_REQUEST[“pass”] : “”; $kelamin = isset($_REQUEST[“kelamin”]) ? $_REQUEST[“kelamin”] : “”; $hobi = isset($_REQUEST[“hobi”]) ? $_REQUEST[“hobi”] : “”; if($nama!=””) { echo("Nama Anda : $nama<BR>"); echo("Password : $pass<BR>"); echo("Jenis Kelamin : $kelamin<BR>"); echo("Hobi : $hobi<BR>"); } else { echo(“Mohon diisi data anda dengan benar.”); }?></BODY></HTML> Variabel global $_REQUEST adalah array yang berisi variabel-variabel yang teregister olehPHP. Variabel-variabel input yang diisi oleh user melalui form akan teregister di variabel $_REQUESTini. Kode PHP di atas menangkap variabel-variabel inputan dari form dan menampilkannya ke layardengan fungsi echo. Kita dapat memisahkan antara file yang memberi input dengan yang memproses input.Untuk melakukan hal tersebut, tambahkan atribut ACTION=”<file_pemroses>” pada tag <FORM>,dan pindahkan kode PHP pada file pemroses tersebut.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 28
  31. 31. Operator dan Struktur Kontrol Program Dasar dari bahasa PHP adalah bahasa C. Hal ini dimaksudkan agar, para programmer yangtelah terbiasa menggunakan bahasa C/C++ mudah menggunakan bahasa PHP untuk membuataplikasi berbasis web. Oleh karena itu, lambang dan cara penggunaan operator (+, -, x, /, %)serta struktur kontrol program (if, switch, for, while) sama persis dengan yang telah dipelajaridalam bahasa C/C++. Modul ini tidak membahas mengenai operator dan struktur kontrol program karenamahasiswa dianggap telah memahami cara penggunaan operator dan struktur kontrol programdalam bahasa C/C++. Array Array digunakan untuk mengidentifikasikan beberapa nilai yang berbeda namun diwakilidengan hanya satu nama variabel. Misalkan saja kita memiliki variabel $negara yang kita ketahuibahwa negara tidak hanya 1. Untuk mengidentifikasi variabel $negara yang memiliki banyak nilai,kita membedakan dari indeksnya, misalnya $negara[1]=”Indonesia” lalu $negara[2]=”Malaysia”dst. Setiap elemen dalam array memiliki nomor indeks, nomor indeks dalam array diawalidengan nol [0]. Pada deklarasi array jika kita tidak mendeklarasikan nomor indeks tersebut makasecara otomatis akan diberi nomor indeks [0]. Untuk mendeklarasikan array menggunakan fungsi array(), misalnya:$negara = array(“Indonesia”,”Malaysia”,”Kamboja”);echo($negara[1]); Seperti terlihat di atas, secara otomatis Indonesia akan diberi indeks [0], Malaysia diberiindeks [1] dan Kamboja diberi indeks [2]. Jika kita menginginkan indeks pertama dimulai dengan 1maka kita dapat menuliskan:$negara=array(1=>”Indonesia”,”Malaysia”,”Kamboja”);echo($negara[1]); Tipe data array memiliki pointer untuk menunjukkan dimana indeks yang aktif. Untuk arrayyang baru dideklarasikan, nomor indeks adalah nomor indeks yang pertama [0]. Untuk mengetahuinomor indeks yang aktif digunakan fungsi key(). Untuk mengetahui nilai dari elemen tersebutdapat menggunakan fungsi current() dan untuk mengetahui jumlah elemen dalam digunakanfungsi count(). Posisi pointer juga dapat diatur, untuk menaikkan pointer kita dapat menggunakanfungsi next(), untuk menurunkan pointer kita dapat menggunakan fungsi prev(), untukmengarahkan pointer ke posisi terakhir dapat menggunakan fungsi end() dan untukmengembalikan pointer kembali ke awal dapat menggunakan fungsi reset().Contoh:<? $negara=Array("Indonesia","Malaysia","Kamboja"); $total=count($negara); for($i=1;$i<=$total;$i++) { $aktif=key($negara); $nilai=current($negara); echo("Pointer berada pada elemen $aktif dan nilainya : $nilai<BR>"); next($negara); } end($negara); for($i=1;$i<=$total;$i++) { $aktif=key($negara); $nilai=current($negara);Laboratorium Komputer ⎯ Ilkom Unpak Bogor 29
  32. 32. echo("Pointer berada pada elemen $aktif dan nilainya : $nilai<BR>"); prev($negara); } end($negara); $aktif=key($negara); echo("<P>Elemen dipindahkan menuju elemen terakhir, yitu elemen ke-$aktif"); reset($negara); $aktif=key($negara); echo("<P>Elemen dipindahkan menuju elemen pertama yaitu elemen ke-$aktif");?> Pada contoh yang telah dibuat di atas, elemen-elemen array berupa integer, tetapi elemenarray juga bisa berupa string, misalnya : $negara[“ina”] = ”Indonesia”, $negara[“my”] =“Malaysia”. Array seperti ini disebut sebagai array associative. Untuk mengambil array yangelemennya berupa string, digunakan fungsi each(). Fungsi each() berfungsi mengambil nilai dariarray kemudian menaikkan pointer satu elemen. Hasil dari fungsi each() dimasukkan ke dalamvariabel menggunakan fungsi list().Contoh:<? $negara=array("ina"=>"Indonesia","my"=>"Malaysia","kam"=>"Kamboja"); $total=count($negara); for($i=1;$i<=$total;$i++) { list($aktif,$nilai)=each($negara); echo("Pointer berada pada elemen $aktif dan nilainya : $nilai<BR>"); }?> PHP menyediakan fungsi yang lengkap untuk manipulasi array, seperti mengurutkan arrayatau menjumlahkan nilai elemen-elemen dalam suatu array. Pembahasan mengenai array lebihjauh dapat dilihat pada PHP Manual Book. Cookie Cookie adalah mekanisme untuk menyimpan data dalam remote browser yang dapatdigunakan untuk melacak dan mengindentifikasikan user. Jika kita ingin meng-assign banyak nilaike satu cookie, maka dapat ditambahkan tanda [] ke nama cookie-nya:Perhatikan contoh-contoh berikut.halsatu.php<? setcookie(“nm_pengunjung”, ”Masagus”); echo”Mendefinisikan cookie.”;?>haldua.php<? echo “Menggunakan komputer yang sama, maka variable $nm_pengunjung adalah $nm_pengunjung.”;?>Laboratorium Komputer ⎯ Ilkom Unpak Bogor 30
  33. 33. haltiga.php<? // menghapus cookie setcookie(“nm_pengunjung”); echo “halaman sudah tidak ada cookie.”;?>halempat.php<? echo “Halaman ini menampilkan cookie yang sudah tidak ada.<br>”; echo “Nama pengunjung adalah $nm_pengunjung.”;?> Operasi File Untuk membuka/mengakses file digunakan fungsi fopen(). Fungsi fopen() ini dapatmengakses file dari sistem file, atau melalui HTTP atau FTP di Internet. Sintaksnya: fopen(filename, mode_akses); Filename adalah file yang akan dibuka, sedangkan mode_akses adalah metodepengaksesan file tersebut apakah file tersebut diakses hanya untuk dibaca, ditulis atau ditambah.Mode akses yang diberikan: Mode Akses Keterangan A Membuka file untuk diubah. Data akan ditambahkan di akhir file yang diakses, jika file tidak ditemukan, maka PHP secara otomatis akan membuat file tersebut. a+ Membuka file untuk diubah dan dibaca. Data akan ditambahkan di akhir file yang diakses, jika file tidak ditemukan, maka PHP secara otomatis akan membuat file tersebut R Membuka file untuk dibaca saja R+ Membuka file untuk dibaca dan ditulis. Data akan ditulis di awal file w Membuka file untuk ditulis saja. Data dalam file yang lama akan hilang dan digantikan dengan data baru yang dimasukkan. Jika file tidak ditemukan, PHP secara otomatis akan membuat file tersebut w+ Membuka file untuk ditulis dan dibaca. Data dalam file yang lama akan hilang dan digantikan dengan data baru yang dimasukkan. Jika file tidak ditemukan, PHP secara otomatis akan membuat file tersebut Untuk melihat isi dari file digunakan fungsi fgets($filename, length), $filename adalahvariabel file yang akan dibuka sedangkan length menunjukkan jumlah karakter yang diambil. Padafungsi fgets() ini setiap tag HTML akan dieksekusi, agar tag HTML tidak bisa dieksekusi makadigunakan fungsi fgetss(). Untuk menuliskan data ke dalam file, digunakan fungsi fputs($namafile, $variabel_data),isi data yang akan dimasukkan berada pada $variabel_data sedangkan $namafile adalah file tujuandata tersebut.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 31
  34. 34. Contoh:tulisan.txtSaya sekarang sedang belajar php<BR> Asyik lhoTernyata PHP itu mudah,tidak sesulit yang dibayangkan<P>Bagaimana?apakah anda ingin belajar lebih lanjut??<HR>tulisan.php<?if($file=fopen("tulisan.txt", "r")){ echo("Dibawah ini menggunakan fgets()<BR>"); while(!feof($file)) { $string=fgets($file,255); echo($string); } fclose($file); $file=fopen("tulisan.txt", "a+"); echo("<P>Yang ini menggunakan fgetss()<BR>"); while(!feof($file)) { $string=fgetss($file,255); echo($string); } $tambahan="Ini Tambahannya"; echo("<P>$tambahan = $tambahan<BR>"); fputs($file,$tambahan); fclose($file); $file=fopen("tulisan.txt","r"); echo("Setelah Ditambah : <BR>"); while(!feof($file)) { $string=fgets($file,255); echo($string); } fclose($file);}else{ echo("File Gagal dibuka");}?>Membuat Counter Kita dapat membuat sebuah aplikasi counter sederhana menggunakan fasilitas manipulasifile sebagai berikut.<html><?php $f = fopen("pengunjung.txt","r"); $count = fgets($f); fclose($f); $count++;Laboratorium Komputer ⎯ Ilkom Unpak Bogor 32
  35. 35. echo "<CENTER><FONT SIZE="3" FACE="arial, verdana, helvetica">Anda pengunjung ke.</FONT></CENTER>" ; echo "<CENTER><FONT SIZE="3" FACE="arial, verdana, helvetica">$count</FONT></CENTER>" ; echo "n<br>" ; $f = fopen("pengunjung.txt","w"); fwrite($f, $count); fclose($f);?><html>Tentu saja kita membutuhkan file yang bernama pengunjung.txt yang isinya berupa angka yangkita tulis pada awal text.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 33
  36. 36. BAB 6 DASAR-DASAR PENGOLAHAN DATA MENGGUNAKAN MySQLPENDAHULUAN Database MySQL merupakan salah satu database yang sifatnya open source, yang dibuatoleh MySQL AB sebuah perusahaan komersial yang bertempat di Swedia. Kemampuan MySQL tidakkalah dengan Oracle yang serba mahal dan SQL server Microsoft. Kelebihan yang dimiliki olehMySQL adalah Aksebilitas yang cepat, Source yang disediakan dengan gratis, dan mudahdigunakan. Cara menulis perintah dalam MySQL:1. Untuk penulisan perintah bebas menggunakan huruf kecil atau huruf besar, namun penamaan atribut, database, dan tabel adalah case sensitive.2. Pernyataan tidak harus ditulis dalam satu baris, MySQL akan melaksanakan perintah jika statement sudah diakhiri dengan ‘;’ (tanda titik koma). Untuk dapat mulai menggunakan MySQL, lakukan langkah-langkah berikut:1. Jalankan MySQL dengan cara run mysql_start.bat atau dari xampp-control.exe pada folder tempat XAMPP di-extract (misal: C:xampp).2. Buka DOS Prompt dengan cara klik Start|Run…, lalu ketikkan cmd <Enter>.3. Masuk ke folder bin MySQL dengan cara mengetikkan: cd c:xamppmysqlbin <Enter>.4. Jalankan MySQL dengan cara mengetikkan mysql [–u<username>] [-p<password>] <Enter>. Jika berhasil, akan tampil jendela MySQL yang ditandai dengan prompt mysql>.DATABASE Database merupakan sekumpulan dari tabel dimana tabel merupakan sejumlah field yangbisa berisi berbagai macam data, sehingga kita terlebih dahulu membuat tabel beserta field-fieldnya berupa kolom. Membuat databaseSintaks untuk membuat database. Mysql> create database nama_db;Contoh: Mysql> create database dbku; Query OK, 1 row affectedPerintah diatas, kita membuat sebuah database yang bernama dbku, dan natinya kita membuattabel di dalam database tersebut. Menggunakan databaseSintaks untuk menggunakan database adalah: Mysql> use nama_db;Laboratorium Komputer ⎯ Ilkom Unpak Bogor 34
  37. 37. Contoh: Mysql>use dbku; Database Changed Menghapus databaseSintaks untuk menghapus database adalah: Mysql>drop nama_db;Contoh: Mysql>drop dbku;TABEL Membuat tabelSintaks untuk membuat tabel pada database adalah Mysql>create table nama_tabel( ->field1 jenis_data(panjang_data) properties, ->field2 jenis_data(panjang_data) properties, ->field3 jenis_data(panjang_data) properties ->);Keterangan:Jenis data: Tipe data field bisa berupa integer, character, text, dll.Panjang data: panjang data field.Properties: tambahan untuk fieldnya bisa berupa not null, default nilainya.Contoh: Mysql>create table nama_tabel( ->No int(5) not null auto_increment, ->Nama char(225) not null, ->Email text(225) not null, ->Primary key(no) ); Mengisi recordSetelah kita membuat Database beserta Tabelnya, sekarang kita mengisi data ke dalam tabeltersebut. Untuk menginput data digunakan perintah INSERT. Sintaksnya sebagai berikut: Mysql>INSERT INTO nama_tabel(field1,field2,field3) ->VALUES(‘data1’,’data2’,’data3,);Laboratorium Komputer ⎯ Ilkom Unpak Bogor 35
  38. 38. Contoh: Mysql>INSERT INTO nama_tabel(No,Nama,Email) ->VALUES(‘1’,’guntur’,’webofficial@afsa-online.org’); Query OK, 1 row affected (0,06 sec) Mengubah isi recordUntuk mengubah (edit) isi data yang ada, sintaksnya sebagai berikut. Mysql>UPDATE nama_tabel set nama_field=’databaru’ where nama_field=’datalama’; Menghapus isi recordUntuk menghapus isi record digunakan perintah DELETE. Berikut sintaks penggunaannya. Mysql>DELETE from nama_tabel where nama_field=’datalama’; Melihat isi tabelPerintah untuk melihat isi sangatlah beragam. Kita bisa mengambil salah satu field atau beberapafield bahkankeseluruhannya. Menampilkan keseluruhan fieldSintaknya adalah: Mysql>select* from nama_tabel; Menampilkan salah satu fieldSintaknya adalah: Mysql>select field from nama_tabel; Menampilkan beberapa fieldSintaknya adalah: Mysql>select field1,field2,field3 from nama_tabel;Untuk latihan, silakan coba membuat database dengan tabel seperti berikut:Laboratorium Komputer ⎯ Ilkom Unpak Bogor 36
  39. 39. Tabel biodata No Nama Umur Pekerjaan Email Asal 1 Rendi 22 Mahasiswa rinda_82@bolehmail.com Bandung 2 Wati 25 Karyawati what_tea@theemail.com Yogyakarta 3 Muklis 19 Wiraswastawan jojo_er@lycos.com Yogyakarta 4 Rina 31 Pelajar rheen@telkom.net Jakarta Memfilter data Kita dapat membatasi pemanggilan data hanya yang memenuhi kriteria yang telahditetapkan. Misalkan pada contoh di atas, kita memanggil data yang disaring berdasarkan umur 20sampai 30 tahun; maka perintahnya adalah: Mysql>select Nama,Umur,Pekerjaan,Email,Asal from biodata where umur between 20 and 30; Mengurutkan data Kita dapat mengurutkan data yang diambil berdasarkan field-field tertentu baik secaramenaik (ASCENDING) maupun menurun (DESCENDING) menggunakan klausa ORDER BY. Misalnyakita ingin mengurutkan data di atas berdasarkan umurnya dari yang termuda sampai yang tertua,maka querynya adalah: Mysql>select Nama,Umur,Pekerjaan,Email,Asal from biodata order by Umur;Laboratorium Komputer ⎯ Ilkom Unpak Bogor 37
  40. 40. BAB 7 PEMROGRAMAN DATABASE MENGGUNAKAN PHP Koneksi ke Server Database Untuk melakukan koneksi ke sebuah server database MySQL, gunakan fungsi: mysql_connect(hostname, username, password); Jika pemanggilan fungsi berhasil, fungsi akan mengembalikan nilai berupa obyek koneksike server database tersebut. Sebaliknya jika gagal, fungsi akan mengembalikan nilai FALSE.Contoh:<? $hostname=”localhost”; // hostname server database $username=”root”; // username database $password=””; // password database if($link=mysql_connect($hostname, $username, $password)) { // Gunakan database “dbku” mysql_select_db(“dbku”); echo(“Koneksi berhasil.”); return 1; } else { // tampilkan pesan error echo mysql_error(); return 0; }?> Menjalankan Query Setelah terkoneksi ke database, selanjutnya anda dapat melakukan query ke database.Caranya menggunakan fungsi mysql_query($query, $link). Fungsi ini akan mengembalikannilai berupa obyek rowset hasil dari eksekusi query jika pemanggilan fungsi berhasil, sebaliknyaakan mengembalikan nilai FALSE. Contohnya adalah seperti di bawah ini.<? mysql_select_db(“dbku”); // memilih database yang digunakan $query=”select * from biodata”; // query yang akan dieksekusi if ($rs=mysql_query($query, $link)) { // eksekusi query echo(“Eksekusi query berhasil.”); return 1; } else { // tampilkan pesan error echo mysql_error(); return 0; }?>Begitu pula untuk query yang lainnya misalnya insert, delete, update, dll., kita dapatmenggunakan perintah mysql_query.Laboratorium Komputer ⎯ Ilkom Unpak Bogor 38
  41. 41. Menampilkan isi tabel Query SELECT akan menghasilkan kumpulan record (recordset/rowset) yang dapat diolahlebih lanjut, untuk ditampilkan di halaman web misalnya. Untuk keperluan tersebut, kita dapatmemanfaatkan salah satu dari fungsi-fungsi di bawah ini. Fungsi Keterangan mysql_fetch_row($rowset) Mengembalikan record berupa array dengan indeks numerik. mysql_fetch_assoc($rowset) Mengembalikan record berupa array dengan indeks string (associative array). mysql_fetch_array($rowset, $type) Mengembalikan record berupa array dengan indeks string, numerik, atau keduanya tergantung dari nilai $type. Nilai $type dapat berisi salah satu dari nilai-nilai berikut: MYSQL_ASSOC MYSQL_NUM MYSQL_BOTH (default) mysql_fetch_object Mengembalikan record berupa obyek. Seluruh fungsi akan mengembalikan nilai FALSE apabila tidak ada record/row yang dapatdiambil, misalnya query yang tidak menghasilkan row. Script di bawah ini membaca seluruh data pada tabel biodata dan menampilkannya kehalaman web dalam format tabel.tabel.php<? $hostname=”localhost”; // hostname server database $username=”root”; // username database $password=””; // password database if($link=mysql_connect($hostname, $username, $password)) { // Gunakan database “dbku” mysql_select_db(“dbku”); // Jalankan query $sql = “SELECT * FROM biodata”; if ($rs=mysql_query($sql, $link)) { // Cetak header tabel echo(“<table><tr> <td><b>No</b></td> <td><b>Nama</b></td> <td><b>Umur</b></td> <td><b>Pekerjaan</b></td> <td><b>Email</b></td> <td><b>Asal</b></td></tr>”); // Cetak record while(is_array($row=mysql_fetch_assoc($rs))) { echo(“<tr> <td>” . $row[“No”] . “</td> <td>” . $row[“Nama”] . “</td> <td>” . $row[“Umur”] . “</td> <td>” . $row[“Pekerjaan”] . “</td> <td>” . $row[“Email”] . “</td> <td>” . $row[“Asal”] . “</td></tr>”);Laboratorium Komputer ⎯ Ilkom Unpak Bogor 39
  42. 42. } // Cetak footer tabel echo(“</table>”); } else { // tampilkan pesan error echo mysql_error(); return 0; } } else { // tampilkan pesan error echo mysql_error(); return 0; }?>Laboratorium Komputer ⎯ Ilkom Unpak Bogor 40
  43. 43. DAFTAR PUSTAKA • Agus K., Pemrograman Jaringan Internet Dengan Visual C++, Elex Media Komputindo, Jakarta, 2002. • Onno W.P., dkk., TCP/IP: Standar, Desain dan Implementasi, Elex Media Komputindo, Jakarta, 1998. • PHP Manual • MySQL ManualLaboratorium Komputer ⎯ Ilkom Unpak Bogor 41

×