internet programming v2.0 comp

43
Laboratorium Komputer Ilkom Unpak Bogor i KATA PENGANTAR Puji syukur kami panjatkan kepada Allah SWT atas rahmat dan karunia-Nya, sehingga Modul Praktikum Pemrograman Jaringan dan Internet ini dapat diselesaikan. Modul ini adalah panduan praktikum mata kuliah Pemrograman Web yang merupakan mata kuliah pilihan yang dapat diambil oleh setiap mahasiswa Jurusan Ilmu Komputer di Universitas Pakuan Bogor. Modul praktikum ini terdiri dari 7 bab. Bab I membahas mengenai perintah-perintah umum yang digunakan dalam jaringan, Windows Socket serta perintah dasar untuk koneksi jaringan menggunakan 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 kontrol WebBrowser untuk mengakses internet. Selain itu dibahas pula cara pemrograman untuk mengirim email. Bab IV membahas mengenai Web Browser dan HyperText Markup Language (HTML) untuk memformat tampilan halaman web. Bab V membahas mengenai dasar-dasar pemrograman web menggunakan PHP Hypertext Preprocessor (PHP). Bab VI membahas mengenai dasar-dasar pengolahan data menggunakan MySQL sebagai server database untuk lingkungan web. Bab VII membahas mengenai dasar-dasar pemrograman database berbasis web menggunakan PHP Hypertext Preprocessor (PHP) dan MySQL. Di setiap bab disajikan teori-teori yang mendasari pembahasan, kemudian diberikan contoh-contoh program sederhana untuk lebih memahami teori yang diberikan. Modul praktikum ini hanya membahas dasar-dasar pemrograman jaringan dan internet yang dirasa perlu dan banyak digunakan sampai saat modul ini dibuat. Bahkan pada beberapa bagian hanya diberikan ulasan singkat mengenai topik yang dibicarakan. Hal ini dilakukan karena tidaklah mungkin untuk menyajikan pemrograman jaringan dan internet dalam sebuah modul praktikum secara mendetail. Kami menyadari bahwa modul praktikum ini masih jauh dari sempurna. Saran dan kritik yang membangun sangatlah diharapkan. Pertanyaan, saran dan kritik dapat disampaikan langsung melalui email: [email protected], atau melalui website: http://www.masagus.co.cc/leavemsg.html. Bogor, April 2008 Penyusun Foni Agus Setiawan, S.Kom.

Upload: nurdin-al-azies

Post on 19-Jan-2015

5.540 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor i

KATA PENGANTAR

Puji syukur kami panjatkan kepada Allah SWT atas rahmat dan karunia-Nya, sehingga Modul Praktikum Pemrograman Jaringan dan Internet ini dapat diselesaikan. Modul ini adalah panduan praktikum mata kuliah Pemrograman Web yang merupakan mata kuliah pilihan yang dapat diambil oleh setiap mahasiswa Jurusan Ilmu Komputer di Universitas Pakuan Bogor.

Modul praktikum ini terdiri dari 7 bab. Bab I membahas mengenai perintah-perintah umum yang digunakan dalam jaringan, Windows Socket serta perintah dasar untuk koneksi jaringan menggunakan 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 kontrol WebBrowser untuk mengakses internet. Selain itu dibahas pula cara pemrograman untuk mengirim email.

Bab IV membahas mengenai Web Browser dan HyperText Markup Language (HTML) untuk memformat tampilan halaman web.

Bab V membahas mengenai dasar-dasar pemrograman web menggunakan PHP Hypertext Preprocessor (PHP).

Bab VI membahas mengenai dasar-dasar pengolahan data menggunakan MySQL sebagai server database untuk lingkungan web.

Bab VII membahas mengenai dasar-dasar pemrograman database berbasis web menggunakan PHP Hypertext Preprocessor (PHP) dan MySQL.

Di setiap bab disajikan teori-teori yang mendasari pembahasan, kemudian diberikan contoh-contoh program sederhana untuk lebih memahami teori yang diberikan.

Modul praktikum ini hanya membahas dasar-dasar pemrograman jaringan dan internet yang dirasa perlu dan banyak digunakan sampai saat modul ini dibuat. Bahkan pada beberapa bagian hanya diberikan ulasan singkat mengenai topik yang dibicarakan. Hal ini dilakukan karena tidaklah mungkin untuk menyajikan pemrograman jaringan dan internet dalam sebuah modul praktikum secara mendetail.

Kami menyadari bahwa modul praktikum ini masih jauh dari sempurna. Saran dan kritik yang membangun sangatlah diharapkan. Pertanyaan, saran dan kritik dapat disampaikan langsung melalui email: [email protected], atau melalui website: http://www.masagus.co.cc/leavemsg.html.

Bogor, April 2008

Penyusun

Foni Agus Setiawan, S.Kom.

Page 2: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor ii

DAFTAR ISI

KATA PENGANTAR ........................................................................................ i

DAFTAR ISI ................................................................................................. ii

BAB 1 DASAR-DASAR PEMROGRAMAN JARINGAN .......................................... 1

BAB 2 PENGIRIMAN DAN PENERIMAAN DATA PADA JARINGAN ........................ 6

BAB 3 WEBBROWSER, WININET DAN MAPI .................................................. 10

BAB 4 PENGENALAN HYPERTEXT MARKUP LANGUAGE (HTML) ......................... 15

BAB 5 PENGENALAN PHP HYPERTEXT PREPROCESSOR (PHP) ........................... 27

BAB 6 DASAR-DASAR PENGOLAHAN DATA MENGGUNAKAN MySQL .................. 35

BAB 7 PEMROGRAMAN DATABASE MENGGUNAKAN PHP ................................. 39

DAFTAR PUSTAKA

Page 3: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 1

BAB 1

DASAR-DASAR PEMROGRAMAN JARINGAN

Pendahuluan

Pada tahun 1972, lembaga riset Departemen Pertahanan Amerika Serikat, DARPA (Defense Advance Research Project Agency) telah berhasil membangun jaringan komunikasi data antar komputer pertama di dunia yang kemudian diberi nama ARPANET. Sejak saat itu, aplikasi-aplikasi yang digunakan untuk jaringan dan internet mulai dibuat dan diminati. Aplikasi internet yang pertama kali ditemukan adalah FTP, menyusul kemudian email dan telnet. Dunia pemrograman jarngan dan internet menjadi semakin ramai sekitar tahun 1990-an sampai sekarang seiring dengan 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 disebut dengan Socket. Microsoft Windows sebagai sebuah sistem operasi yang mendukung protocol TCP/IP pun kemudian menggunakan standar ini. Dalam Windows, implementasi socket ini diberi nama WinSock. Tanpa socket, sebuah sistem operasi tidak akan dapat mengimplementasikan protocol TCP/IP. Penguasaan akan WinSock menjadi pintu gerbang bagi seorang programmer jaringan 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-perintah tersebut 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 dan informasi sistem operasi dengan proses query DNS.

Hanya pada 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 hilang pada masing-masing router sepanjang jalur pengiriman data.

Hanya pada server Windows.

Page 4: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 2

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 pemrograman jaringan. Winsock merupakan standar API jaringan pada semua varian dari sistem operasi Microsoft Windows. Sampai saat modul ini ditulis, Winsock mencapai versi 2.0 yang merupakan penyempurnaan dari versi 1.1.

Inti rutin-rutin Winsock berada pada file WS2_32.DLL. Untuk memudahkan pemrograman

dengan kontrol ActiveX, Microsoft telah membuat kontrol Winsock yang diimplementasikan pada file MSWINSCK.OCX. Untuk mempermudah pengertian dan pembahasan, contoh-contoh program pada modul ini akan menggunakan kontrol Winsock yang diimplementasikan pada bahasa pemrograman 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 dapat digambarkan 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.

Gambar 1.1 Cara kerja Winsock.

Cara Penggunaan Kontrol Winsock

Agar dapat menggunakan kontrol Winsock, Anda harus menambahkan komponen tersebut ke dalam project dengan cara mengklik Project|Components… atau menekan Ctrl+T. Beri tanda cek kontrol yang bernama Microsoft Winsock Control 6.0, lalu tekan Apply atau OK, maka icon kontrol Winsock akan terlihat pada Toolbar. Selanjutnya, kontrol Winsock dapat digunakan seperti penggunaan kontrol-kontrol standar lainnya.

1

Server Client

2

34

5 6

Page 5: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 3

Gambar 1.2 Menambahkan kontrol Winsock ke dalam project.

Properties, Methods dan Events yang umum digunakan pada obyek Winsock beserta

fungsinya 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 dilakukan

Page 6: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 4

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 pada topik Winsock Control.

Latihan 1.1 Mendapatkan Nama dan Alamat IP Komputer Lokal 1. Buatlah sebuah proyek dengan nama LocalIP.vbp. 2. Buat sebuah form bernama frmLocalIP dengan tampilan sebagai berikut.

3. Set properties-nya menjadi sebagai berikut.

Obyek Property Nilai

txtHost BackColor &H00C0C0C0&

txtHost Locked True

txtIP BackColor &H00C0C0C0&

txtIP Locked True

4. 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 Sub

5. Jalankan program. Tekan tombol Resolve, maka nama komputer dan alamat IP-nya akan tertera.

sck

txtHost

txtIP

Page 7: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 5

BAB 2

PENGIRIMAN DAN PENERIMAAN DATA PADA JARINGAN

Pendahuluan

Pada Bab I telah dijelaskan mengenai cara kerja Winsock untuk melakukan komunikasi data 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 bersifat connectionless-oriented.

Connection-oriented berarti koneksi antara client dan server harus terbentuk terlebih dahulu sebelum dilakukan pertukaran data. Reliable berarti TCP menerapkan proses deteksi kesalahan dan retransmisi. Sedangkan byte stream service berarti paket dikirimkan dan sampai ke tujuan secara berurutan.

Pada TCP, untuk menghubungi server digunakan method Connect, sedangkan pada UDP digunakan method Bind. Latihan di bawah ini menerapkan konsep pengiriman dan penerimaan data pada jaringan menggunakan protokol TCP. Implementasi protokol UDP lebih mudah namun lebih jarang penggunaannya dalam pemrograman jaringan. Untuk menambah wawasan, Anda dapat melihat contoh cara pengimplementasian protokol UDP ini pada MSDN pada bagian Using Winsock Control.

Latihan 2.1 Mengirim dan Menerima Data Melalui Jaringan 1. Buatlah sebuah proyek bernama TCPServer.vbp. 2. Tambahkan sebuah form bernama frmChat dengan tampilan sebagai berikut.

3. 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 Sub

txtChat

txtMsg

Page 8: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 6

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 Sub

6. Bukalah jendela Microsoft Visual Basic yang baru, lalu buat sebuah proyek bernama

TCPClient.vbp. 7. Tambahkan sebuah form bernama frmChat dengan tampilan sebagai berikut.

txtChat

txtMsg

Page 9: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 7

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 Sub

11. Jalankan TCPServer.vbp, kemudian tekan tombol Listen. 12. Jalankan TCPClient.vbp, kemudian tekan tombol Connect. 13. Cobalah untuk saling berkirim data.

Tugas

1. 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:

Page 10: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 8

<komputer10> hai <komputer15> test nih

2. 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 nih

Page 11: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 9

BAB 3

WEBBROWSER, WININET DAN MAPI

Pendahuluan Microsoft telah menyediakan kontrol-kontrol ActiveX yang sangat membantu para

programmer untuk membuat aplikasi di lingkungan Windows. Termasuk tiga di antaranya adalah Microsoft Internet Control (WebBrowser), Microsoft Internet Transfer Control (WinInet) dan Microsoft MAPI Controls (MAPI). Di samping WinSock, ketiga kontrol ini sangat berguna dalam pemrograman internet.

Microsoft Internet Control (WebBrowser) menyediakan kemampuan bagi sebuah aplikasi untuk melakukan proses menjelajah (browsing). Penjelajahan dapat dilakukan dalam internet, jaringan atau komputer lokal.

Microsoft Internet Transfer Control (WinInet) mengimplementasikan dua protokol yang umum digunakan di internet, yaitu: HyperText Transfer Protocol (HTTP) dan File Transfer Protocol (FTP). Menggunakan kontrol ini, Anda dapat terkoneksi ke situs manapun yang menggunakan salah satu dari protokol ini. Tipe koneksi dapat diatur apakah akan menggunakan koneksi synchronous (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, atau 3. Mem-parsing kode HTML dari sebuah halaman web.

Microsoft Messaging Application Program Interface (MAPI) Controls memberikan fasilitas untuk membuat aplikasi yang berhubungan dengan pengiriman pesan dalam jaringan dan email, seperti mengirim email, menerima email, mengelola attachment dan address book. MAPI adalah kumpulan prosedur-prosedur inti yang memungkinkan sebuah aplikasi untuk berkomunikasi dengan server email yang mendukung MAPI. Contohnya adalah Microsoft Exchange yang dapat dihubungi dari client manapun yang menggunakan driver MAPI.

WebBrowser

Cara penggunaan kontrol WebBrowser sangat mudah. Metode-metode dasarnya adalah sebagai 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 homesite

Page 12: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 10

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 ke dalam sebuah program. Kontrol WebBrowser digunakan untuk menampilkan halaman sebuah situs dan kontrol WinInet digunakan untuk mengambil source halaman situs tersebut.

Page 13: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 11

Latihan 4.1 Membuat Browser Sederhana 1. Buatlah sebuah proyek dengan nama MyBrowser.vbp. 2. Buat sebuah form bernama frmBrowser dengan tampilan sebagai berikut.

3. 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 Sub

txtAddress

browser

inet

picToolbar

Page 14: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 12

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 Sub

5. 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 berkenaan dengan pengiriman dan penerimaan pesan baik dalam jaringan lokal maupun di internet. Dalam modul ini hanya akan dibahas mengenai penggunaan kontrol MAPI untuk mengirim email beserta attachment-nya. Cara penggunaan kontrol ini untuk tujuan lain seperti untuk menerima email dapat dilihat pada MSDN pada topik Microsoft MAPI Message Control dan Microsoft MAPI Session Control. 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.SignOn

4. 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.

Page 15: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 13

If mps.SessionID <> 0 then mpm.SessionID = mps.SessionID ‘next commands, i.e. sends message … …

Else ‘error occured

End If

5. 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 If 6. 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 If

7. Setelah selesai menggunakan session, Anda dapat memutus hubungan dengan server mail dengan cara memanggil method SignOff.

'log off from mail server... mps.SignOff

Tugas

Buatlah sebuah aplikasi yang dapat digunakan untuk mengirim email dengan langkah-langkah seperti yang telah diuraikan di atas. Setelah Anda berhasil mengirim email, beberapa saat kemudian periksalah apakah email tersebut sampai ke alamat tujuan atau tidak. Selamat mencoba!

Page 16: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 14

BAB 4

PENGENALAN HYPERTEXT MARKUP LANGUAGE (HTML)

PENDAHULUAN

HTML kependekan dari Hypertext Markup Language, yaitu suatu bahasa yang digunakan untuk menulis halaman web. HTML dirancang untuk digunakan tanpa tergantung pada suatu platform tertentu. Dokumen HTML adalah suatu dokumen teks biasa, dan disebut markup language karena mengandung tag tertentu yang digunakan untuk menentukan tampilan suatu teks da tingkat kepentingan dari teks tersebut dalam suatu dokumen. Pada dokumen HTML yang termasuk sistem hypertext, kita tidak harus membaca dokumen tersebut secara urut dari atas kebawah atau sebaliknya, tetapi kita dapat menuju topik tertentu secara langsung dengan menggunakan teks penghubung 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 telah tersedia bermacam-macam level (versi) HTML, yaitu HTML 1.0, HTML 2.0, HTML 3.0, dan HTML 4.0. Untuk menjalankan dokumen HTML harus menggunakan web browser.

STRUKTUR DOKUMEN HTML

Secara sederhana, HTML terdiri dari dua bagian yaitu Header dan Body. Struktur HTML diapit 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 lihat pada pojok kiri atas (title bar) brower. Ketika orang ingin mem-bookmark web Anda, maka judul inilah yang akan disimpan.

Page 17: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 15

HEADING

Heading adalah sekumpulan kata yang menjadi judul atau subjudul dalam suatu dokumen HTML. Heading berbeda dengan tag <TITLE> yang tidak dapat muncul dalam halaman web. HTML menyediakan 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 isi paragraf dan paragraf itu harus diakhiri dengan tag penutup </P>. Anda bisa mengatur posisi paragraf dengan menggunakan atribut ALIGN. Atribut ALIGN diikuti dengan posisi yang diinginkan. Left untuk meratakan paragraf kiri, center untuk meratakan paragraf di posisi tengah horisontal dan 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 tidak memiliki ahli waris. Kepada pengacaranya, ia meninggalkan dua buah surat wasiat yang disegel. Yang sebuah berisi permintaan agar jenazahnya dikuburkan pada jam empat dini hari. surat yang kedua belum diketahui isinya karena disampulnya tertulis pesan agar dibuka seusai pemakaman jenazah. <P ALIGN=”center”> Sesuai dengan wasiat, jenazah itu dikebumikan pada pukul empat dini hari. karena tidak lazimnya waktu pemakaman pada jam tersebut, yang ikut mengantar jenazahnya hanya empat orang kawannya yang paling setia. <P ALIGN=”left”> Seusai pemakaman, surat wasiat yang kedua dibuka. Betapa terkejutnya pengacara ketika membaca isinya, ialah wasiat bahwa seluruh harta warisan dibagi rata kepada orang-orang yang mengantarkan jenazahnya pada pemakaman. Dengan demikian, yang berhak memperoleh harta yang banyak itu hanya empat orang, sebagai imbalan bagi kesetiaan mereka. </P> </BODY> </HTML>

Page 18: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 16

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. Namun ada 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> memiliki atribut 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 ukuran huruf terkecil dan nilai 7 untuk ukuran paling besar. Atribut FACE digunakan untuk mengatur jenis huruf yang diinginkan. Atribut FACE harus diisi dengan string jenis font seperti Arial, Times New Roman, Verdana, dan sebagainya. Atribut COLOR digunakan untuk mengatur warna font yang diinginkan. Untuk memberi nilai pada atribut color ada dua cara. Cara pertama dengan menyebutkan nama warna seperti red, green dan blue. Sedangkan cara kedua adalah dengan menggunakan nilai RGB (Red Geen Blue) dari suatu warna, 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 ke dokumen HTML lain digunakan perintah <A HREF = “nama_dokumen”> Teks pada browser </A>.

Anda juga bisa membuat link dalam sebuah dokumen HTML. Untuk itu, perlu disediakan nama anchor lokasi tujuan dari link tersebut. Nama anchor dibuat dengan menambahkan atribut NAME pada tag <A>. Misalnya <A NAME = “abbiati”>Abbiati</A>. Cara melakukan link ke bagian tersebut adalah <A HERF = “#nama_anchor”> teks pada browser</A>.

Page 19: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 17

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>

LIST

Ada 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 nomor secara 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 tag penutup. Dengan menggunakan ordered list Anda tidak perlu memberi nomor untuk tiap-tiap bagian. Perintah tersebut akan secara otomatis diproses oleh browser. Perhatikan contoh berikut ini:

Page 20: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 18

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 adalah

1,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 menentukan

nilai awal penomoran. Atribut yang digunakan adalah START=n, di mana n adalah nilai awal

penomoran. 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>

Page 21: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 19

</HTML>

Unordered List

Berbeda dengan ordered list, dalam unordered list tidak dijumpai urutan dalam suatu daftar. Setiap bagian dari unordered list ditandai dengan tanda bullet. Tanda bullet menjadi default dalam unordered list. Untuk membuat daftar dengan tanda ini digunakan tag awal <UL> dan tag penutup </UL>. Sama seperti ordered list, untuk tiap-tiap bagiannya digunakan tag <LI> tanpa tag 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 pada daftar berikut ini:

Atribut Fungsi

TYPE=circle Tanda lingkaran

TYPE=disk Tanda cakram

TYPE=square Tanda kotak

Contoh 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>

GRAFIK

Page 22: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 20

HTML menyediakan tag <IMG> untuk menampilkan gambar dalam halaman web. Dari berbagai macam format gambar yang ada, hanya beberapa saja yang bisa digunakan dalam membuat halaman web. Format gambar yang paling sering digunakan adalah GIF, JPEG/JPG dan PNG. Standar penulisan tag <IMG> adalah:

<IMG SRC=”file_gambar”ALT=”nama_alternatif”>

Atribut SRC digunakan untuk menentukan sumber gambar. Atribut ALT berfungsi sebagai teks pengganti gambar untuk browser yang tidak bisa mendukung grafik (misalnya lynx) atau apabila client sengaja mematikan fasilitas pemanggilan gambar (misalnya Auto Load Images pada Nestcape). 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,

VSPACE

Menentukan jarak spasi horisontal dan spasi vertikal antara gambar dengan obyek di 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>

Page 23: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 21

TABEL

Tabel banyak digunakan karena dapat menampilkan informasi dengan bentuk yang ringkas dan 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 untuk perataan di kiri, center untuk perataan di tengah, dan right untuk penataan di kanan. Sedangkan untuk perataan vertikal menggunakan atribut VALIGN. VALIGN dapat bernilai top untuk penataan di atas, middle untuk penataan di tengah dan bottom untuk penataan di bawah.

Lebar tabel biasanya diatur dengan mengunakan atribut WIDTH. Nilai WIDTH dapat dinyatakan dengan persen (%) yang berarti menyatakan lebar tabel dalam persentase atau dinyatakan dengan pixel yang berarti ukuran sesungguhnya dari tabel. Perhatikan contoh berikut:

Contoh tabel_align.html

<HTML>

Page 24: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 22

<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 antara dua 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 yang menggunakan 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.html

Page 25: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 23

<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 contoh berikut 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 user untuk kemudian dikirim ke server. Tag <FORM> membuat kerangkanya sedangkan tag <INPUT> menyediakan elemen antarmuka dengan user.

Form

Page 26: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 24

Anda tentu sering menjumpai situs yang menyediakan buku tamu bagi pengunjungnya. Formulir tersebut dibuat dengan menggunakan elemen form dan input. Standar penulisan Form adalah:

<FORM METHOD=”<[POST/GET]>” ACTION=”<URL>”>

<INPUT ...

<INPUT ...

</FORM>

Atribut METHOD memiliki dua nilai POST dan GET. Metode GET mengirimkan data pada server dengan cara meletakkan data pada bagian akhir URL (Uniform Resource Locator) yang ditunjuk. Metode POST mengirimkan datanya secara terpisah dari URLnya. Jika data masuk banyak, lebih baik digunakan metode POST. Atribut ACTION berisi URL dari program yang dipanggil oleh form tersebut.

TextBox

TextBox merupakan salah satu jenis kontrol untuk memasukkan data. HTML menyediakan tag <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 memberi nama input tersebut, atribut VALUE untuk memberi nilai suatu input, dan atribut SIZE untuk menentukan batas terpanjang sebuah masukan. Nilai VALUE juga menjadi tulisan yang tampak pada browser.

Anda bisa menyembunyikan masukan yang ditulis user dengan memberi nilai TYPE=”password”. Masukan akan menjadi karakter ”*”. CheckBox

Selain atribut TYPE bernilai text dan password, Anda bisa memberi nilai atribut TYPE dengan 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 salah satu pilihan yang tersedia. User tidak bisa memilih kurang atau lebih dari satu pilihan. Atribut CHECKED memberi tanda bahwa pilihan tersebut sedang diaktifkan. Submit dan Reset

Setiap form harus memiliki tombol Submit atau tombol Reset. Lebih baik jika keduanya digunakan bersama. Kedua tombol diatas dibuat dengan menggunakan atribut TYPE=”submit” dan TYPE=”reset”. Tombol submit digunakan ketika user telah selesai mengisi formulir dan ingin mengirimkan ke server. Sedangkan tombol reset digunakan ketika user ingin menghapus semua masukan yang telah ditulis.

Perhatikan contoh di bawah ini:

Contoh form.html

Page 27: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 25

<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>

Page 28: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 26

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 dapat

disisipkan diantara bahasa HTML (embedded). Script PHP dieksekusi di server dan

menghasilkan 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 awalnya

dibuat untuk menghitung jumlah pengunjung pada homepagenya. Diawal Januari 2001, PHP

telah dipakai lebih dari 5 juta domain diseluruh dunia, dan akan terus bertambah karena

kemudahan dan kegratisan aplikasi PHP ini dibandingkan dengan bahasa server-side yang

lain.

PHP termasuk dalam Open Source Product. Jadi anda dapat merubah source code dan

mendistribusikannya secara bebas. PHP juga diedarkan secara gratis. Anda bisa

mendapatkannya 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 PHP dengan 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.80

Page 29: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 27

+ Mercury Mail Transport System v4.01b

+ FileZilla FTP Server 0.9.16c

+ Webalizer 2.01-10

+ Zend Optimizer 3.0.0

Cara 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 dengan suatu kode dan diakhiri dedngan kode tertentu maka PHP pun mempunyainya. Kode PHP diawali dengan tanda <? atau <?php dan diakhiri dengan tanda ?>. Sedangkan untuk menambahkan komentar diawali dengan tanda /* dan diakhiri dengan */ atau menggunakan tanda //. Yang berarti 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 untuk mengkompilasi dan menyimpan beberapa bit data, sehingga untuk memanggil suatu data kita tinggal memanggil variabel tersebut.

Variabel dalam PHP selalu dimulai dengan tanda ‘$’. Tidak terpengaruh apakah data merupakan integer, real maupun string, PHP akan secara otomatis mengkonversi data menurut tipenya.

Page 30: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 28

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 oleh PHP. Variabel-variabel input yang diisi oleh user melalui form akan teregister di variabel $_REQUEST ini. Kode PHP di atas menangkap variabel-variabel inputan dari form dan menampilkannya ke layar dengan 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.

Page 31: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 29

Operator dan Struktur Kontrol Program

Dasar dari bahasa PHP adalah bahasa C. Hal ini dimaksudkan agar, para programmer yang telah terbiasa menggunakan bahasa C/C++ mudah menggunakan bahasa PHP untuk membuat aplikasi berbasis web. Oleh karena itu, lambang dan cara penggunaan operator (+, -, x, /, %) serta struktur kontrol program (if, switch, for, while) sama persis dengan yang telah dipelajari dalam bahasa C/C++.

Modul ini tidak membahas mengenai operator dan struktur kontrol program karena mahasiswa dianggap telah memahami cara penggunaan operator dan struktur kontrol program dalam bahasa C/C++.

Array

Array digunakan untuk mengidentifikasikan beberapa nilai yang berbeda namun diwakili dengan hanya satu nama variabel. Misalkan saja kita memiliki variabel $negara yang kita ketahui bahwa 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 diawali dengan nol [0]. Pada deklarasi array jika kita tidak mendeklarasikan nomor indeks tersebut maka secara 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 diberi

indeks [1] dan Kamboja diberi indeks [2]. Jika kita menginginkan indeks pertama dimulai dengan 1 maka kita dapat menuliskan:

$negara=array(1=>”Indonesia”,”Malaysia”,”Kamboja”); echo($negara[1]);

Tipe data array memiliki pointer untuk menunjukkan dimana indeks yang aktif. Untuk array

yang baru dideklarasikan, nomor indeks adalah nomor indeks yang pertama [0]. Untuk mengetahui nomor indeks yang aktif digunakan fungsi key(). Untuk mengetahui nilai dari elemen tersebut dapat menggunakan fungsi current() dan untuk mengetahui jumlah elemen dalam digunakan fungsi count(). Posisi pointer juga dapat diatur, untuk menaikkan pointer kita dapat menggunakan fungsi next(), untuk menurunkan pointer kita dapat menggunakan fungsi prev(), untuk mengarahkan pointer ke posisi terakhir dapat menggunakan fungsi end() dan untuk mengembalikan 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);

Page 32: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 30

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 elemen

array juga bisa berupa string, misalnya : $negara[“ina”] = ”Indonesia”, $negara[“my”] = “Malaysia”. Array seperti ini disebut sebagai array associative. Untuk mengambil array yang elemennya berupa string, digunakan fungsi each(). Fungsi each() berfungsi mengambil nilai dari array kemudian menaikkan pointer satu elemen. Hasil dari fungsi each() dimasukkan ke dalam variabel 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 array atau menjumlahkan nilai elemen-elemen dalam suatu array. Pembahasan mengenai array lebih jauh dapat dilihat pada PHP Manual Book.

Cookie

Cookie adalah mekanisme untuk menyimpan data dalam remote browser yang dapat digunakan untuk melacak dan mengindentifikasikan user. Jika kita ingin meng-assign banyak nilai ke 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.”;

?>

Page 33: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 31

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 dapat mengakses 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 metode

pengaksesan 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 adalah variabel file yang akan dibuka sedangkan length menunjukkan jumlah karakter yang diambil. Pada fungsi fgets() ini setiap tag HTML akan dieksekusi, agar tag HTML tidak bisa dieksekusi maka digunakan 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 tujuan data tersebut.

Page 34: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 32

Contoh:

tulisan.txt

Saya sekarang sedang belajar php<BR> Asyik lho Ternyata 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 manipulasi file sebagai berikut.

<html> <?php

$f = fopen("pengunjung.txt","r"); $count = fgets($f); fclose($f); $count++;

Page 35: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 33

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 yang kita tulis pada awal text.

Page 36: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 34

BAB 6

DASAR-DASAR PENGOLAHAN DATA MENGGUNAKAN MySQL

PENDAHULUAN

Database MySQL merupakan salah satu database yang sifatnya open source, yang dibuat oleh MySQL AB sebuah perusahaan komersial yang bertempat di Swedia. Kemampuan MySQL tidak kalah dengan Oracle yang serba mahal dan SQL server Microsoft. Kelebihan yang dimiliki oleh MySQL adalah Aksebilitas yang cepat, Source yang disediakan dengan gratis, dan mudah digunakan.

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:\xampp\mysql\bin <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 yang bisa berisi berbagai macam data, sehingga kita terlebih dahulu membuat tabel beserta field-fieldnya berupa kolom.

Membuat database

Sintaks untuk membuat database.

Mysql> create database nama_db;

Contoh:

Mysql> create database dbku;

Query OK, 1 row affected

Perintah diatas, kita membuat sebuah database yang bernama dbku, dan natinya kita membuat tabel di dalam database tersebut.

Menggunakan database

Sintaks untuk menggunakan database adalah:

Mysql> use nama_db;

Page 37: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 35

Contoh:

Mysql>use dbku;

Database Changed

Menghapus database

Sintaks untuk menghapus database adalah:

Mysql>drop nama_db;

Contoh:

Mysql>drop dbku;

TABEL

Membuat tabel

Sintaks 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 record

Setelah kita membuat Database beserta Tabelnya, sekarang kita mengisi data ke dalam tabel tersebut. Untuk menginput data digunakan perintah INSERT. Sintaksnya sebagai berikut:

Mysql>INSERT INTO nama_tabel(field1,field2,field3)

->VALUES(‘data1’,’data2’,’data3,);

Page 38: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 36

Contoh:

Mysql>INSERT INTO nama_tabel(No,Nama,Email)

->VALUES(‘1’,’guntur’,’[email protected]’);

Query OK, 1 row affected (0,06 sec)

Mengubah isi record

Untuk mengubah (edit) isi data yang ada, sintaksnya sebagai berikut.

Mysql>UPDATE nama_tabel set nama_field=’databaru’

where nama_field=’datalama’;

Menghapus isi record

Untuk menghapus isi record digunakan perintah DELETE. Berikut sintaks penggunaannya.

Mysql>DELETE from nama_tabel where nama_field=’datalama’;

Melihat isi tabel

Perintah untuk melihat isi sangatlah beragam. Kita bisa mengambil salah satu field atau beberapa field bahkankeseluruhannya.

Menampilkan keseluruhan field

Sintaknya adalah:

Mysql>select* from nama_tabel;

Menampilkan salah satu field

Sintaknya adalah:

Mysql>select field from nama_tabel;

Menampilkan beberapa field

Sintaknya adalah:

Mysql>select field1,field2,field3 from nama_tabel;

Untuk latihan, silakan coba membuat database dengan tabel seperti berikut:

Page 39: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 37

Tabel biodata

No Nama Umur Pekerjaan Email Asal

1

2

3

4

Rendi

Wati

Muklis

Rina

22

25

19

31

Mahasiswa

Karyawati

Wiraswastawan

Pelajar

[email protected]

[email protected]

[email protected]

[email protected]

Bandung

Yogyakarta

Yogyakarta

Jakarta

Memfilter data

Kita dapat membatasi pemanggilan data hanya yang memenuhi kriteria yang telah ditetapkan. Misalkan pada contoh di atas, kita memanggil data yang disaring berdasarkan umur 20 sampai 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 secara menaik (ASCENDING) maupun menurun (DESCENDING) menggunakan klausa ORDER BY. Misalnya kita 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;

Page 40: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 38

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 koneksi ke 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 mengembalikan nilai berupa obyek rowset hasil dari eksekusi query jika pemanggilan fungsi berhasil, sebaliknya akan 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 dapat menggunakan perintah mysql_query.

Page 41: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 39

Menampilkan isi tabel

Query SELECT akan menghasilkan kumpulan record (recordset/rowset) yang dapat diolah lebih lanjut, untuk ditampilkan di halaman web misalnya. Untuk keperluan tersebut, kita dapat memanfaatkan 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 dapat diambil, misalnya query yang tidak menghasilkan row.

Script di bawah ini membaca seluruh data pada tabel biodata dan menampilkannya ke halaman 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>”);

Page 42: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 40

} // Cetak footer tabel echo(“</table>”); } else {

// tampilkan pesan error echo mysql_error(); return 0;

} } else { // tampilkan pesan error echo mysql_error(); return 0; }

?>

Page 43: Internet Programming v2.0 Comp

Laboratorium Komputer ⎯ Ilkom Unpak Bogor 41

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 Manual