Dasar Pemrograman Web (HTML) HTML (Hypertext Markup Language) merupakan bahasa yang digunakan untuk membuat website. Menggunakan tag untuk mendeklarasikan sesuatu dan tag tersebut tidak ditampilkan tetapi tag tersebut memberi tahu browser bagaimana cara menampilkan dokumen website. Serta dapat saling berhubungan dengan dokumen HTML lain yang dikenal dengan istilah link. Suatu halaman website sebenarnya hanya sebuah halaman teks, jika anda menggunakan browser internet explorer dan anda mengklik view - source, maka anda dapat melihat teks dari web tersebut. Tetapi teks tersebut diterjemahkan oleh browser menjadi halaman website yang enak dilihat. Teks merupakan bahasa universal bagi komputer, yang berarti setiap dokumen teks (termasuk website) yang anda buat melalui Windows dapat dibaca di sistem perasi lain seperti Mac OS, Linux, Unix dan lainnya. HTML dan hal-hal yang berkaitan dengan website distandarisasi oleh sebuah badan yang disebut World Wide Web Consortium (W3C). Standard terbaru, konsep dan proposal mengenai starndarisasi web dapat dilihat di http://www.w3.org. Standar untuk HTML terbaru adalah HTML 4.0 yang telah didukung oleh bermacam-macam browser seperti Microsoft Internet Explorer, Netscape Navigator, Opera, Mozilla, Safari dan masih banyak lagi. Browser menterjemahkan tag yang terdapat pada dokumen HTML. Kita akan segera membicarakan mengenai tag. Suatu halaman web merupakan file teks yang berarti anda dapat membuatnya hanya dengan menggunakan notepad saja. Bahkan jika anda masih pertama kali mempelajari HTML, notepad merupakan alat yang tepat. Saya menyarankan untuk menggunakan editplus karena menurut saya enak aja dipakainya, tetapi anda bebas menggunakan teks editor lain. Jika anda baru pertama kali mengenal HTML, hindari Program WYSIWIG (What You See Is What You Get) seperti Dreamweaver atau Frontpage/Web Expression. Program-program ini memang memudahkan anda membuat website tetapi anda akan kurang memahami HTML, gunakan Frontpage atau Dreamweaver apabila anda sudah paham mengenai HTML. 1| Kode HTML pertama Buka notepad dan tuliskan kode dibawah ini Hello World Simpan file tersebut dengan nama hello.html didalam suatu folder (misal c:\webku) dan buka file HTML tersebut dengan browser kesukaan anda. Hasilnya seperti ini: Hello <b>World!!</b> Penjelasan: Yang dimaksud oleh "<" dan ">", ketika anda menuliskan sesuatu diantara tanda "<" dan ">" maka anda membuat sesuatu yang disebut dengan tag, kalau anda lihat dikamus bahasa inggris tag artinya tanda/label. Sebagai contoh tag <b> maksudnya untuk memulai huruf tebal (bold) dan tag </b> merupakan tag penutup untuk menghentikan huruf tebal. Sebuah halaman HTML yang baik harus memiliki tag <head> dan <body>, tapi kita akan membicarakan masalah ini belakangan. Yang penting sekarang pahami dulu mengenai tag HTML. Sekarang akan kita pelajari lebih jauh mengenai tag HTML. Tag HTML dibagi menjadi dua, yaitu tag HTML yang memiliki penutup (containers) atau yang berdiri sendiri (stand alone). Containers Kebanyakan tag HTML adalah containers (kita sebut containers saja sebab sulit mencari terjemahannya dalam bahasa Indonesia) yang berarti tag tersebut memiliki pembuka (batas awal) dan penutup (batas akhir). Teks yang berada diantara tag pembuka dan penutup akan berubah sesuai dengan fungsi dari tag tersebut. Perhatikan contoh berikut: Hello <i>World!!</i><br> Hasil: Hello World!! Tag <i> berguna untuk memiringkan teks (italic) tag <i> memiliki penutup yaitu </i>. Tag penutup selalu ditandai dengan "/". Contoh diatas terdapat teks World!! diantara tag pembuka <i> dan tag penutup </i> sehingga menghasilkan tulisan World!! yang miring. Tag pembuka memiliki atribut tetapi tag penutup tidak memiliki atribut. 2| Standalone Tag Beberapa tag tidak memerlukan penutup sebab tag tersebut hanya berfungsi untuk menempatkan sebuah elemen pada halaman web. Sebagai contoh tag <img> yang merupakan tag untuk memasang sebuah gambar didalam halaman web. Tag lain yang tidak memiliki penutup adalah <br> yang berguna untuk memberi jarak antar teks dan tag <hr> untuk memberi garis. Tag HTML cukup banyak jumlahnya, anda dapat mencarinya dibuku-buku atau mencarinya melalui google untuk mengetahui apa saja jenis tag HTML. Atribut Atribut dipasang didalam tag pembuka untuk menambahkan fungsi dari tag tersebut. Setiap tag memiliki beberapa atribut dan dipasang sesudah nama tag dibatasi oleh spasi. Urutan atribut tidak perlu diperhatikan. Kebanyakan atribut memiliki nilai yang dipanggil dengan menggunakan tanda "=" sesudah nama atribut. Sebagai contoh perhatikan kode berikut: Hello <font face="verdana" size="2" color="red">World!!</font> Hasilnya: Hello World!! Tulisan World!! terletak ditengah tag <font> nah tag <font> memiliki atribut face, size dan color yang dapat anda ubah nilainya. Cobalah untuk mengubah ukuran (size) menjadi 3 atau jenis fontnya ubahlah dari verdana menjadi arial. Kira-kira seperti itu kegunaan atribut. HTML Entity Jika anda ingin menuliskan karakter khusus dalam web, maka anda perlu menulisnya menggunakan kode khusus. Kode khusus ini dikenal dengan istilah HTML entity. Sebagai contoh anda ingin menulis seperti ini: Saya belajar web Anda lihat ada jarak spasi antara belajar dan web. Anda tidak bisa membuat spasi dengan menekan tombol space bar berkali-kali. Meskipun pada kode HTML hasilnya terdapat jarak namun browser hanya membacanya sekali, jadi sebanyak apapun space bar 3| yang tekan browser hanya membacanya satu spasi. Lalu bagaimana caranya? Spasi dalam HTML memiliki kode HTML entity yaitu &nbsp; jadi untuk membuat seperti contoh diatas anda perlu menulisnya seperti ini: Saya belajar&nbsp;&nbsp;&nbsp;&nbsp;web HTML entity selalu diawali dengan "&" dan diakhiri dengan ";" Struktur Dokumen HTML Dokumen HTML yang baik memiliki tag <head> dan <body>. <head> mendefiniskan bagian header dari dokumen HTML yang berisi informasi mengenai dokumen HTML tersebut. Tag <head> tidak memiliki atribut tetapi memiliki container khusus didalam header seperti <base>, <meta>, dan <title>. Tag <body> mendefinisikan awal dari isi website dan ditutup dengan </body>. Tag <body> berisi isi dokumen yang akan tampil di browser anda. Sebagai contoh silahkan coba coding di bawah ini: <html> <head> <title>Your title</title> </head> <body bgcolor="#cccccc"> Hello <b>World!!</b> </body> </html> Hasilnya didalam Microsoft Internet Explorer : Anda lihat teks yang berada diantara tag <title> muncul dibagian atas browser. Apapun yang anda tulis diantara tag <body> akan muncul sebagai isi dari website anda. Jika anda lihat terdapat tag <body bgcolor="#cccccc"> bgcolor merupakan atribut dari <body> yang berguna untuk memberi warna pada background halaman website. Pelajari dan pahami kode tersebut maka anda akan mudah untuk mempelajari kode selanjutnya. 4| Susun file Anda Sangat penting untuk meletakkan file-file HTML anda. Akan lebih baik jika anda membuat folder untuk meletakkan file-file HTML dan didalamnya anda membuat subfolder (misalnya images) untuk menyimpan file-file gambar. Semakin sering anda membuat website anda akan semakin berpengalaman dan mengetahui teknik dalam menyusun file. index.html Ketika anda membuka dhimasronggobramantyo.com/belajar.html maka otomatis browser akan membuka file belajar.html. Tetapi jika kita membuka dhimasronggobramantyo.com saja, file apa yang dibuka? Semua server web otomatis akan mencari file index.html. Karena itu jika website anda memiliki banyak halaman, anda harus memiliki sebuah file index.html yang akan menjadi halaman pertama dari website anda. Teks dan Paragraf Header/judul akan membuat mata pembaca tertuju pada judul dan tertarik untuk membacanya. Dengan menggunakan tag heading maka search engine dapat membaca seberapa penting isi dari suatu website. Heading merupakan container yang diawali dengan tag <h1> dan ditutup dengan tag </h1>. Ada 6 level heading mulai dari h1 sampai h6. Cobalah kode berikut ini: <h1>My First HTML</h1> <h2>My First HTML</h2> <h3>My First HTML</h3> <h4>My First HTML</h4> <h5>My First HTML</h5> <h6>My First HTML</h6> 5| Hasil: Saya rasa anda dapat dengan mudah memahami kode tersebut, sekarang kita coba tag HTML penting lainnya. <p> digunakan untuk membuat paragraf, ini merupakan salah satu tag yang banyak digunakan, tag penting lainnya adalah <b> untuk menebalkan,<i> untuk memiringkan dan <u> untuk garis bawah Sekarang coba kode berikut ini: <p>Halo, nama saya <b>Budi</b> dan saya ingin belajar HTML.</p> <p>Ini merupakan <i>kode HTML pertama saya</i> dan saya belajar untuk <u>memformat</u> teks dalam HTML </p> Bagaimana hasilnya? silahkan anda coba sendiri, jika anda selalu melihat contoh dihalaman ini, anda tidak akan mencoba :) Beberapa tag mempunyai atribut ALIGN, termasuk <p> dan <h1> - <h6>. ALIGN berguna untuk membuat teks rata kiri, tengah atau kanan. Cobalah kode berikut: <h1 align="center">Nama saya Jono</h1> <p>Halo nama saya Jono dan saya lagi belajar HTML</p> <p align="right">James, 2006</p> Hasilnya: 6| Anda dapat mengubah jenis huruf, ukuran dan warna. Untuk mengubah huruf digunakan tag <font>, tag <font> memiliki atribut seperti face, size dan color. Contoh: <p><font face="Arial" size="2" color="#FF0000">Nama saya</font> <b>Bambang</b><font face="Arial" size="2"> dan </font><font face="Tahoma">saya cinta rupiah</font></p> Silahkan anda coba sendiri untuk melihat seperti apa hasilnya Didalam HTML, untuk memberi jarak anda tidak bisa hanya menekan "enter" saja. Untuk memberi jarak perbaris kita perlu tag HTML yaitu <br> sedangkan untuk spasi seperti yang sudah saya jelaskan tadi, kita perlu menggunakan HTML entity / character entity, untuk spasi character entitynya adalah &nbsp;. Langsung saja coba kode berikut ini: <p>Baris 1<br>Baris 2<br>Baris&nbsp;&nbsp;&nbsp;&nbsp; 3<br>Baris <b>4</b></p> Hasil: Baris 1 Baris 2 Baris 3 Baris 4 Untuk memberikan garis horisontal digunakan tag <hr>. Tag <hr> memiliki beberapa atribut. Tag <hr> tidak memerlukan tag penutup jadi tag <hr> merupakan standalone tag. Coba contoh berikut ini: <p>Halo nama saya Telo</p> <hr width="25%" align="justify"> <p>Saya lagi belajar membuat garis horisontal.</p> <hr size="4" align="justify"> <p>Matur nuwun</p> <hr size="3" noshade color="#000000" width="25%" align="justify"> 7| Hasil: Seperti yang anda lihat, anda bisa memasang banyak atribut dalam satu tag. Pada tag <hr> terdapat atribut yang tidak memiliki nilai yaitu noshade. Memang dalam beberapa tag HTML terdapat atribut-atribut yang tidak memiliki nilai. Salah satunya adalah noshade yang berarti menghilangkan bayangan pada garis. Anda dapat melihat perbedaan tag <hr> yang menggunakan noshade dengan yang tidak pada kode diatas. Links Link merupakan suatu cara untuk berpindah dari satu halaman ke halaman yang lain. <a> merupakan tag HTML untuk membuat link agar kita dapat berpindah ke halaman lain. Tag <a> memiliki atribut yang sangat penting yaitu href. Langsung saja coba kode berikut ini: My <a href="http://www.dhimasronggobramantyo.com">Homepage</a> Hasil: My homepage Jika anda lihat, maka teks homepage telah berubah menjadi link, jika anda klik maka browser akan menuju alamat yang tertera pada atribut href. Sekarang jika anda memiliki banyak file HTML dalam satu folder, apakah saya perlu menggunakan http:// untuk melinknya? tentu tidak anda cukup menulis nama filenya saja, asalkan file tersebut berada satu folder dengan file yang berisi link. Contoh: My <a href="contact.html">homepage</a> Hasil: My homepage 8| Jika anda klik, maka browser akan membuka file contact.html yang berada pada satu folder. Bagaimana jika filenya berada difolder lain? mudah, gunakan kode berikut: My <a href="folder/contact.html">homepage</a> Hasil: My homepage Jika anda ingin ketika link diklik dan halaman tersebut muncul pada jendela browser yang baru, gunakan atribut target="_blank" seperti ini: My <a href="http://www.dhimasronggobramantyo.com" target="_blank">homepage</a> Images Pertengahan tahun 90'an website-website yang ada tidak memiliki gambar, karena browser yang ada tidak memiliki kemampuan untuk menampilkan gambar. Tetapi sekarang website tanpa gambar akan terlihat membosankan, tetapi website dengan banyak gambar akan terlihat membuat kesal untuk sebagian visitor. Jadi gunakan gambar seperlunya, keluarkan semua imajinasi dan nilai seni anda untuk dapat membuat website yang nyaman dilihat. Gambar yang dipasang di website disarankan menggunakan bertipe file gif atau jpg. Untuk memasang image anda memerlukan tag <img>. Tag <img> tidak memerlukan penutup dan memiliki atribut src untuk mengambil gambar dari suatu alamat. Coba contoh berikut ini: <img src="images/artikel/introhtml_02.gif" width="313" height="43" alt="Contoh Gambar"> Hasil: Atribut src disini sama dengan atribut href pada tag <a> yang berisi alamat posisi gambar. Pada contoh kode diatas anda memiliki gambar introhtml_02.gif yang berada pada folder images. Jika anda tidak memiliki file tersebut maka gambar tidak ditampilkan. Atribut width dan height merupakan opsional, tapi disarankan untuk mencantumkannya agar browser mengetahui ukuran gambar apabila gambar gagal ditampilkan. Atribut alt berguna untuk menampilkan teks pada gambar jika gambar gagal ditampilkan atau belum selesai ditampilkan. Anda dapat memberikan garis tepi pada gambar dengan menambahkan atribut border 9| <a href="http://www.dhimasronggobramantyo.com"> <img border="1" src="images/introhtml_02.gif" width="313" height="43"></a> Hasil: Komentar Anda dapat menuliskan komentar dikode HTML, komentar berguna apabila anda ingin kembali mengutak-atik kode maka anda ingat kode tersebut fungsinya apa. Komentar hanya untuk memudahkan anda saja. Komentar tidak ditampilkan oleh browser. Untuk menulis komentar diawali dengan <!-- dan diakhiri dengan --> lihat contoh berikut ini: <!--Kode untuk menampilkan nama saya--> <p>Nama saya <b>Dhimas</b></p> List Tag list berguna untuk menampilkan list-list. Ada 3 macam jenis list pada HTML. Yang pertama adalah Unordered List <ul>: <ul> <li>List 1</li> <li>List 2</li> <li>List 3</li> </ul> Hasil: List 1 List 2 List 3 Tag <ul> merupakan tag pembuka. Diantara tag <ul> Anda dapat menambahkan tag <li> untuk setiap list yang akan ditampilkan. Tag list lainnya adalah Ordered List <ol> Anda dapat menggunakannya sama seperti tag <ul> Contoh: <ol> <li>List 1</li> <li>List 2</li> <li>List 3</li> </ol> Hasil: 10 | 1. List 1 2. List 2 3. List 3 Jika anda ingin memulai list tidak dari nomor satu tambahkan atribut start. Contoh: <ol start="3"> <li>List 1</li> <li>List 2</li> <li>List 3</li> </ol> Hasil: 3. List 1 4. List 2 5. List 3 Tabel merupakan hal yang paling penting dalam membuat interface website anda. Dengan tabel anda dapat memecah layout website menjadi beberapa kolom atau baris. Dengan tabel halaman website anda akan lebih rapih. Table merupakan tag html terumit, karena didalam tag table terdapat tag-tag lainnya. Dan table sangat penting. Karena itu sebelum meneruskan, tarik nafas dalam-dalam dan konsentrasi. Untuk membuat tabel maka diperlukan tag-tag dasar seperti ini : <TABLE></TABLE>--Tag ini merupakan containers untuk membuat tabel. <TR></TR>--Didalam tabel tag ini berfungsi untuk membuat baris. <TD></TD>--Tag untuk membuat kolom. didalam tag <tr> harus terdapat tag <td>, anda bisa menambahkan banyak tag <td> didalam <tr> untuk membuat kolom. <TH></TH>--Sama dengan <td> hanya saja berfungsi sebagai header, biasanya digunakan pada baris pertama didalam tabel. Setiap tag tabel tersebut memiliki banyak atribut. Oke langsung saja coba kode berikut ini: Contoh: <table border="1" width="60%"> <tr> <td>Contoh Table</td> </tr> 11 | </table> Hasilnya: Contoh Tabel Tabel diawali dengan tag <table> dan biasanya memiliki atribut border. Jika border="0" maka garis pada tabel tidak ditampilkan. Biasanya jika kita tidak menampilkan atribut border maka otomatis tabel tersebut juga tidak memiliki garis. <table> memiliki atribut cellpadding untuk memberi jarak didalam kolom dan cellspacing untuk memberi jarak antara kolom. Coba kode berikut ini: <table border="1" width="200" cellpadding="4" cellspacing="5"> <tr> <td width="100">Cell 1</td> <td width="100">Cell 2</td> </tr> </table> Hasil: Cell 1 Cell 2 Coba anda ubah nilai dari atribut cellpadding dan cellspacing untuk melihat perbedaannya, cobalah untuk mengutak-atik kode diatas dengan mengubah nilai-nilai atributnya. Setiap tabel memiliki baris dengan menggunakan tag <tr>. Didalam baris perlu sebuah kolom atau lebih, kolom dibuat dengan menggunakan tag <td>. Untuk lebih jelasnya cobalah kode berikut ini: <table border="1" width="200" cellpadding="2"> <tr> <td width="100" align="center" bgcolor="#C0C0C0"><b>Header</b></td> <td width="100" align="center" bgcolor="#C0C0C0"><b>Header</b></td> / </tr> <tr> <td width="100">cell 1</td> <td width="100">cell 2</td> </tr> <tr> <td width="100">cell 3</td> <td width="100">cell 4</td> / 12 | </tr> </table> Hasil: Header Header cell 1 cell 2 cell 3 cell 4 Bagaimana anda mengerti maksudnya kode diatas, coba anda pahami dulu. Pada kode diatas terdapat atribut bgcolor yang berguna untuk memberi warna pada background. Didalam kolom <td> anda dapat menuliskan kode HTML apa saja, bahkan anda dapat memasang tag <table> didalamnya, yang berarti anda memasang tabel didalam tabel. Contoh lainnya: <table border="1" width="200" cellpadding="2"> <tr> <td width="100" align="center" bgcolor="#C0C0C0"><b>Header</b></td> <td width="100" align="center" bgcolor="#C0C0C0"><b>Header</b></td> </tr> <tr> <td width="100" rowspan="2" valign="top">cell 1</td> <td width="100">cell 2</td> </tr> <tr> <td width="100">cell 4</td> </tr> </table> Hasilnya: Header cell 1 Header cell 2 cell 4 Anda lihat ada atribut rowspan="2" ini berguna untuk menggabungkan 2 baris menjadi satu, jika anda ingin menggabungkan lebih dari 2 baris, ubah saja nilainya. Jika sudah coba anda pahami kode berikut ini: 13 | <table border="0" width="200" cellpadding="2" cellspacing="1" bgcolor="#000000"> <tr> <td width="100" align="center" bgcolor="#C0C0C0"><b>Header</b></td> <td width="100" align="center" bgcolor="#C0C0C0"><b>Header</b></td> </tr> <tr> <td width="100" valign="top" bgcolor="#CCCCCC" align="left">Left</td> <td width="100" bgcolor="#CCCCCC" align="right">Right</td> </tr> <tr> <td width="200" valign="top" colspan="2" bgcolor="#FFFFFF" align="center"> Table is cool</td> </tr> <tr> <td width="200" valign="top" colspan="2" bgcolor="#FFFFFF" align="center"> But it's not easy</td> </tr> </table> Hasil: Header Header Left Right Table is cool But it's not easy Anda sudah mengetahui dasar-dasar HTML. Masih banyak lagi tag-tag HTML lainnya seperti frames dan form. Saya akan mengajarkan frames diartikel lainnya, tetapi frames harus dihindari dalam membuat website, alasan utama apa yang ada didalam frames tidak terbaca oleh Search Engine. Tag form hanya dibutuhkan apabila anda membuat website dinamis menggunakan bahasa pemrograman web seperti PHP, ASP, Perl atau JSP. Sekarang kita akan membicarakan tag <META>. Tag <META> digunakan agar search engine mengenal dan dapat mengkategorisasikan website anda, gampangnya agar search engine 14 | mengetahui website anda isinya tentang apa. Tetapi tidak semua search engine membaca tag <META> tetapi sebagian besar membaca tag ini, jadi kita perlu menyertakannya pada website kita. Tag <META> berada diantara tag <head> bukan <body> yang berarti isi tag tersebut tidak ditampilkan dibrowser. Sebenarnya apa sih kegunaan Search Engine dan apa pengaruhnya untuk website? Saya akan jelaskan secara gampang, anda memiliki website katakan websitesaya.com, nah bagaiman milyaran pengguna internet dapat mengetahui kalau ada sebuah situs websitesaya.com diantara ratusan juta situs lainnya. Pengguna internet banyak yang melakukan pencarian melalui search engine seperti google atau yahoo. Jika mereka melakukan pencarian dan situs anda muncul pada hasil pencarian tersebut, maka anda mendapatkan pengunjung yang mengunjungi website anda. Bagaimana agar sebuah website ada di google atau search engine lainnya? ya dengan menggunakan <META> maka search engine akan mengenali website anda. Sebenarnya prosesnya jauh lebih rumit, search engine memiliki perhitungannya sendiri seperti ranking, backlink, recipocal link, tetapi kita ambil gampangnya saja. Tag <META>Tag <META> memiliki atribut yang paling penting Keywords dan DESCRIPTION dimana kita memasukkan deskripsi dan kata kunci yang berhubungan dengan website kita. Sebagai contoh misalnya kita memiliki website kecoak.com yang berisi bagaimana cara memelihara dan beternak kecoa. Maka kira-kira kita perlu membuat meta seperti ini: <html> <head> <META content="kecoak.com" name=AUTHOR> <META content="Cara memelihara dan beternak kecoak." name=description> <META content="kecoak, beternak, memelihara, coro, ternak, pelihara" name=keywords> <META content="INDEX, FOLLOW" name=ROBOTS> <META http-equiv="Content-Language" content="en-us"> <META http-equiv="Content-Type" content="text/html; charset=windows1252"> <title>Ternak Kecoak</title> </head> 15 | Pengenalan PHP Mysql PHP pertama kali dibuat dan diperkenalkan oleh Rasmus Lerdorf pada tahun 1995. PHP merupakan akronim dari Personal Home Page. Generasi awal PHP digunakan untuk kebutuhan pribadi saja, namun karena kebutuhan penggunaan yang semakin kompleks maka dikembangkan PHP yang dilengkapi beberapa fungsi untuk pengaksesan ke dalam database dengan tujuan membangun halaman web menjadi lebih dinamis. PHP adalah bahasa interpreter yang diintegrasikan kedalam Web Server seperti Apache untuk menghasilkan aplikasi yang dapat dijalankan dalam internet maupun intranet. Sebagai bahasa program berbasis web PHP mempunyai lebih banyak kelebihan dibandingkan bahasa sejenis lainnya. PHP adalah produk open source yang tentu saja dapat didistribusikan secara gratis tanpa dikenai dibiaya. Beberapa hal yang menonjol dari PHP dibandangkan bahasa program yang lain seperti ASP, antara lain : Mempunyai fleksibilitas tinggi karena menggunakan bahasa C yang merupakan High Level Programming Language. Berjalan di banyak platform seperti UNIX, Linux, Mac OS dan Windows 95/98/2000. Mempunyai fungsi akses ke database seperti MySQL, Oracle, PostgreSQL, dan lain-lain. Mempunyai banyak fungsi “built-in”. Relatif lebih secure terhadap serangan virus atau worm. NSTALASI PHP, MYSQL, DAN APACHE Ada beberapa cara yang dapat dilakukan untuk melakukan instalasi PHP diantaranya dengan menggunakan PHPtriad atau Xampp. PHPtriad terdiri atas 3 macam program, yaitu PHP, MySQL, dan Apache. Secara otomatis dengan menginstalasi PHPtriad ketiga komponen tersebut akan terinstal, namun PHPtriad agak ditinggalkan karena kerumitannya. Salah satu paket program yang relatif sederhana dan mudah dalam instalasi adalah Xampp. Dalam pelatihan ini paket yang dipergunakan adalah Xampp versi 1.4.6 for Windows. 16 | Kebutuhan Hardware Sebelum melakukan instalasi, perlu diketahui hardware yang dibutuhkan untuk menjalankan Xampp adalah sebagai berikut : - 128 MB RAM (Recommended) - 115 MB free Fixed Disk - Windows 98, ME, XP Home - Windows NT, 2000, XP Profesional (Recommended) Tahapan Instalasi Langkah awal dalam instalasi Xampp adalah menemukan file xampp-win32-1.4.6installer yang berada didalam folder Xampp. Gambar 1.0 Xampp-win32-1.4.6-installer Klik ganda pada file tersebut hingga muncul tampilan seperti gambar berikut : Gambar 1.1 Tentukan bahasa yang hendak dipilih 17 | Anda dapat memilih Bahasa Indonesia atau Bahasa Inggris selama proses instalasi. Klik tombol OK selanjutnya akan muncul gambar di bawah ini. Gambar 1.2 Setup wizard Silahkan di klik tombol next tersebut di atas. Gambar 1.3 License Agreement 18 | Selanjutnya klik tombol I Agree tersebut sehingga tampil gambar seperti ini : Gambar 1.4 Pemilihan lokasi install Tentukan folder tujuan tempat dimana paket program akan diletakkan kemudian klik tombol Install. Tunggu proses instalasi beberapa saat jika sudah selesai akan tambil seperti gambar 1.5 dibawah ini. Gambar 1.5 Instalasi telah selesai Memulai Menjalankan Xamp 19 | Setelah proses instalasi berjalan dengan sempurna, Xampp dapat mulai dijalankan dengan membuka direktori c:\apachefriends\xampp kemudian klik ganda xampp_start.exe jika servis sudah berjalan akan muncul jendela baru seperti berikut : Gambar 1.6 Menjalankan servis start Jendela tersebut menandakan bahwa servis Apache, MySQL, dan PHP sudah berjalan. Selama menjalankan Xampp jendela tersebut tidak boleh di tutup. Bila ingin mematikan servis tinggal klik file xampp_stop.exe. Untuk memastikan xampp telah berfungsi baik, buka browser dan ketikkan URL http://localhost tetapi biasanya pada saat menjalankan servis xamp_start.exe secara otomatis muncul tampilan awal xampp seperti gambar di bawah. 20 | Gambar 1.7 Tampilan pembuka xampp File Pertama PHP Sebelum memulai file PHP pertama, perlu diketahui bahwa file PHP harus diletakkan pada home direktori yaitu di c:\apachefriends\xampp\htdocs. Sebagai awal pembuatan script PHP buka Notepad kemudian ketikkan perintah seperti pada gambar berikut : Gambar 1.8 File pertama PHP Simpanlah file tersebut di deroktori c:\apachefriends\xampp\htdocs\diklat-php dan beri nama helloworld.php. Untuk melihat hasilnya buka browser http://localhost/mis2007/helloworld.php 21 | Gambar 1.9 Helloworld.php 22 | Form Form HTML merupakan tag yang paling penting dalam pembuatan aplikasi berbasis web. Form menyediakan interface untuk menerima masukan data dari user sehingga halaman web dapat menjadi interaktif. Contoh aplikasi form antara lain pengisian guestbook, mengisi polling, mengisi angket, mengisi data pribadi, dan form pembelian barang. Selain untuk menerima data user, form juga dapat berfungsi untuk navigasi atau kontrol dalam website seperti pemilihan bahasa, layout, dll. Untuk membuat form, tag yang digunakan adalah <form> yang memiliki beberapa atribut sebagai berikut: <form method=”POST”(/”GET”) action=”url”> . . </form> Atribut Fungsi Method menentukan bagaimana informasi akan dikirim. Terdapat 2 pilihan: “POST” dan “GET”. POST artinya sebundel data akan dikirim begitu saja, sementara GET akan menambahkan sesuatu pada URL di bagian address browser. Action menentukan ke mana data akan dikirim. Kita dapat mengisinya dengan URL tempat pemroses data berada atau data dikirimkan ke sebuah alamat email, yaitu dengan menuliskan “mailto : alamat email” Text Box Untuk membuat sebuah text box digunakan tag sebagai berikut: Nama = <input type=”text” name=”name” size=”size” maxlength=”length” readonly> Atribut Fungsi type=“text” yaitu untuk menentukan bahwa elemen form yang dibuat berupa text box, name=“nama“ dari text box, biasanya digunakan untuk event handler bahasa script atau pemberian style, size untuk menentukan ukuran dari text box, maxlength untuk menentukan panjang maksimal masukan, readonly berfungsi jika disebutkan maka elemen tidak bisa diubah nilainya Contoh: Nama : <input type=”text” name=”nama” size=”20”> 23 | Tampilan pada browser: Password Elemen form ini digunakan untuk memperoleh password dari user. Karakter yang ditampilkan saat user mengetikkan password-nya adalah asterisk (*) atay bullet (•). Sintaksnya: <input type=”password” name=”name” size=”size”> Contoh : password:<input type="password" name="passwd" size="15" maxlength="14"> Tampilan pada browser: 24 | Text area Text area digunakan untuk menerima masukan teks yang panjang, yang terdiri dari beberapa baris. Sintaksnya: <textarea name=”name” rows=”r” cols=”c” wrap=”off/hard/soft”> Tulisan yang ditampilkan dalam kotak </textarea> Atribut Fungsi rows menentukan jumlah baris cols menentukan jumlah kolom wrap ada 3 pilihan: “off” -> tulisan akan terus berlanjut ke samping tanpa pindah baris “soft” -> data terpotong saat menyentuh batas kanan dan berpindah ke baris baru. Data masih utuh memanjang pada saat dikirimkan “hard” -> tulisan terpotong begitu saja ketika menyentuh batas kanan. Data terkirim dalam keadaan terpotong-potong contoh : Alamat : <textarea name=”alamat” rows=”3” cols=”20” wrap=”soft”>Isikan alamat lengkap Anda </textarea> Tampilan pada browser: 25 | Radio Digunakan untuk menerima pilihan kepada user. User hanya bisa memilih satu pilihan saja. <input type=”radio” name=”name” value=”value”> value : memberikan nilai yang isinya ditentukan oleh kita Contoh: Jenis kelamin : <br> <input type=”radio” name=”sex” value=”m”><br > <input type=”radio” name=”sex” value=”f”> Tampilan pada browser: Checkbox Digunakan untuk menerima pilihan dari user. Dapat memilih lebih dari satu. <input type=checkbox name=”name” value=”value”> Contoh: Daftar Training : <br> <input type=checkbox name=”training” value=”web> Webmaster <br /> <input type=checkbox name=”training” value=”j2me”>J2ME 26 | Tampilan pada browser: Untuk checkbox dan radio, kita bisa tentukan pilihan default dengan menambahkan atribut checked pada tag pilihan. Select Select berbeda dengan radio maupun checkbox karena tidak menggunakan tag <input>, tapi langsung memakai tag <select>. Elemen select berupa list drop down terdiri dari sejumlah pilihan. <select name=”name” multiple size=”1”> <option> ... <option> ... </select> Atribut Fungsi Multiple : berguna agar dapat menentukan pilihan lebih dari satu, yaitu dengan menekan tombol ctrl dan meng-klik pilihan tersebut size : banyaknya baris pilihan ditampilkan, defaul: 1 selected : memberikan pilihan awal Contoh : Text editor: <select name=”Editor” size=”1” > <option selected>Notepad<br /> 27 | <option>Editplus<br /> <option>Ultraedit<br /> </select> Tampilan pada browser: Button, Reset, Submit, dan Image Semua komponen input ini merupakan komponen input yang berbentuk button yang akan bereaksi ketika terjadi event (misalnya penekanan tombol). Ada beberapa perbedaan dari keempat tombol ini yang terkait dengan fungsi maupun bentuk tampilan button. Atribut Fungsi button akan menampilkan sebuah tombol pada browser yang tidak akan bereaksi apapun sebelum diberi kode tambahan reset komponen ini memiliki bentuk sama dengan tombol dan memiliki fungsi khusus yaitu menghapus semua masukan user pada elemen-elemen form submit tombol yang jika diklik, isian di form akan langsung dikirim menggunakan ke file pemroses yang disebutkan dalam atribut action image sama dengan submit, namun tampilannya bisa diubah dengan gambar <input type=”button/reset/submit/image” name=”name” value=”value” src=”file gambar”> 28 | Contoh: <form> <input type="file" value="Masukkan file"><br /><br /> <input type="button" value="Tombol"><br /><br /> <input type="submit"><br /><br /> <input type="reset"><br /><br /> <input type="image" src="a1.gif"><br /> </form> Tampilan pada browser: 29 | Struktur Control Percabangan/ Logika Percabangan, atau sering disebut juga dengan istilah decision-making, memungkinkan aplikasi untuk memeriksa isi suatu variabel atau hasil perhitungan ekspresi dan mengambil tindakan yang sesuai. Ada dua jenis percabangan, dipilih berdasarkan kriteria pemeriksaan dan jumlah pilihan yang tersedia. Struktur Kondisi If if (kondisi) { statement-jika-kondisi-true; } Keterangan : kondisi merupakan statemen atau variabel yang akan diperiksa TRUE atau FALSE-nya. Struktur Kondisi If ... Else if (kondisi) { statement-jika-kondisi-true; } else { statement-jika-kondisi-false; } Keterangan : kondisi merupakan statemen atau variabel yang akan diperiksa TRUE atau FALSE-nya. Jika kondisinya TRUE maka statemen yang berada di blok if akan dieksekusi, sebaliknya jika kondisinya FALSE maka statemen yang berada di blok else yang akan dieksekusi. Struktur Kondisi Khusus ? : (kondisi) ? benar : salah; Keterangan : kondisi merupakan statemen atau variabel yang akan diperiksa TRUE atau FALSE-nya. Statement pada blok benar dan salah hanya boleh satu statemen saja 30 | Struktur Kondisi Switch ... Case switch ($var) { case '1' : statement-1; break; case '2' : statement-2; break; .... } Keterangan : $var merupakan variabel yang akan diperiksa isi atau nilainya. Tipe data variabel ini tidak dibatasi. Value pada case juga bisa berupa string, integer, boolean, bahkan bias berupa conditional-statement. Boleh memakai kutip tunggal maupun kutip ganda. Contoh Program sederhana menggunakan Struktur Kondisi If. Nama File : if.php <?php $nilai = 80; if ($nilai >= 60) { echo "Nilai Anda $nilai, Anda LULUS"; } ?> Penjelasan : Pada program di atas, terdapat pemeriksaan kondisi apakah isi variabel $nilai lebih dari 60 (baris 3). Jika kondisi ini bernilai TRUE (variabel $nilai berisi nilai yang lebih besar dari 60) maka statement pada baris ke-4 akan dijalankan. Sebaliknya jika kondisinya FALSE, maka statement pada baris ke-4 tidak akan dijalankan. 31 | Contoh Program sederhana menggunakan Struktur Kondisi If..Else. Nama File : if_else.php <?php $nilai = 50; if ($nilai >= 60) { echo "Nilai Anda $nilai, Anda LULUS"; } else { echo "Nilai Anda $nilai, Anda GAGAL"; } ?> Penjelasan : Pada program di atas, terdapat pemeriksaan kondisi apakah isi variabel $nilai lebih dari 60 (baris 3). Jika kondisi ini bernilai TRUE (variabel $nilai berisi nilai yang lebih besar dari 60) maka statement pada baris ke-4 akan dijalankan. Sebaliknya jika kondisinya FALSE, maka statement pada baris ke-6 yang akan dijalankan. Pada contoh program di atas, kondisi pada baris ke-3 bernilai FALSE karena isi variabel $nilai adalah 50. Contoh Program sederhana Memeriksa username dan password dengan If..Else. Nama File : if_else2.php <?php $user = "achmatim"; $pass = "123" if ($user == "achmatim" && $pass == "123") { echo "Login Berhasil"; } else { echo "Login Gagal"; } ?> Penjelasan : Pada program di atas, terdapat pemeriksaan kondisi apakah isi variabel $nilai sama dengan “achmatim” dan apakah isi variabel $pass sama dengan “123” (baris 4). Jika 32 | kedua kondisi tersebut bernilai TRUE maka statement pada baris ke-5 akan dijalankan. Sebaliknya jika salah satunya bernilai FALSE, maka statement pada baris ke-7 yang akan dijalankan. Contoh Program sederhana Memeriksa suatu variabel ada atau tidak. Nama File : if_var.php <?php $user=""; if (!isset($user)) { echo "Variabel tidak ada/belum terbentuk"; } else { echo "Variabel ada"; } ?> Penjelasan : Pada program di atas, terdapat fungsi isset() yang merupakan fungsi untuk memeriksa apakah suatu variabel sudah terbentuk (ada) atau belum. Fungsi akan bernilai TRUE jika variabelnya ada. Jadi jika baris ke-2 dari program di atas diremark atau dihilangkan maka statement pada baris ke-4 yang akan dijalankan. Contoh Program Struktur Switch..Case untuk menampilkan nama hari Nama File : switch.php <?php $day = date ("D"); switch ($day) { case 'Sun' : $hari = "Minggu"; break; case 'Mon' : $hari = "Senin"; break; case 'Tue' : $hari = "Selasa"; break; case 'Wed' : $hari = "Rabu"; break; case 'Thu' : $hari = "Kamis"; break; case 'Fri' : $hari = "Jum'at"; break; case 'Sat' : $hari = "Sabtu"; break; 33 | default : $hari = "Kiamat"; } echo "Hari ini hari <b>$hari</b>"; ?> Penjelasan : Pada program di atas, variabel $day (baris ke-2) akan berisi 3 (tiga) digit pertama dari nama hari dalam bahasa Inggris. Dengan fungsi date(), kita akan memperoleh informasi tanggal, hari dan waktu sekarang. Fungsi ini akan diperlajari lebih lanjut pada pertemuan mendatang. Selanjutnya isi variabel $day akan diperiksa dengan switch (baris ke-3), jika isinya adalah ‘Sun’ maka $hari adalah “Minggu” dan seterusnya. Contoh Program Struktur Kondisi Khusus ? untuk memeriksa tahun kabisat. Nama File : if_khusus.php <?php $tahun = date ("Y"); $kabisat = ($tahun%4 == 0) ? "KABISAT" : "BUKAN KABISAT"; echo "Tahun <b>$tahun</b> $kabisat"; ?> Penjelasan: Pada program di atas, fungsi date() dengan parameter “Y” (baris ke-2) akan menghasilkan 4 digit tahun sekarang. Pada baris ke-3 akan diperiksa apakah isi variabel $tahun jika dimodulus dengan 4 akan menghasilkan nilai 0. Jika TRUE maka $kabisat akan berisi “KABISAT” dan jika FALSE $kabisat akan berisi “BUKAN KABISAT” 34 | Struktur Control Perulangan Struktur Perulangan For Bentuk umum: for (init_awal, kondisi, counter) { statement-yang-diulang; } Keterangan : init_awal merupakan inisialisasi atau nilai awal variable. kondisi merupakan statemen kondisi yang akan membatasi perulangan. counter merupakan pertambahan atau pengurangan nilai variable sehingga perulangan tetap berjalan. Struktur Perulangan While Bentuk umum: init_awal; while (kondisi) { statement-yang-diulang; counter; } Keterangan : init_awal merupakan inisialisasi atau nilai awal variable. kondisi merupakan statemen kondisi yang akan membatasi perulangan. counter merupakan pertambahan atau pengurangan nilai variable sehingga perulangan tetap berjalan. 35 | Struktur Perulangan Do ... while Bentuk umum: init_awal; do { statement-yang-diulang; counter; } while (kondisi); Keterangan : init_awal merupakan inisialisasi atau nilai awal variable. kondisi merupakan statemen kondisi yang akan membatasi perulangan. counter merupakan pertambahan atau pengurangan nilai variable sehingga perulangan tetap berjalan. Pada struktur do...while, pemeriksaan kondisi ada di bawah, sehingga statement yang berada dalam block do...while setidaknya akan dieksekusi sebanyak satu kali. Struktur Perulangan Foreach Bentuk umum: foreach (array_expression as $value) statement; foreach (array_expression as $key => $value) statement; Keterangan : Struktur foreach biasanya digunakan untuk melakukan perulangan berdasarkan isi suatu array. Perulangan akan berakhir jika isi array telah habis. 36 | Contoh Program Struktur Perulangan For dan beberapa variasinya. Nama File : for.php <?php /* contoh 1 */ for ($i = 1; $i <= 10; $i++) { echo "$i "; } echo "<br><br>"; /* contoh 2 */ for ($i = 1; ; $i++) { if ($i > 10) { break; } echo "$i "; } echo "<br><br>"; /* contoh 3 */ $i = 1; for (; ; ) { if ($i > 10) { break; } echo "$i "; $i++; } echo "<br><br>"; /* contoh 4 */ for ($i = 1; $i <= 10; print "$i ", $i++); ?> 37 | Penjelasan : Program di atas merupakan bentuk-bentuk perulangan dengan menggunakan for. Contoh yang pertama (baris 4-6) merupakan bentuk yang paling umum. Pada contoh 2, batas akhir perulangan tidak disebutkan dalam for, tapi diatur dengan if dan break (baris 1113). Contoh Program Struktur Perulangan While dan beberapa variasinya. Nama File : while.php <?php /* contoh 1 */ $i = 1; while ($i <= 10) { echo $i++; } echo "<br><br>"; /* contoh 2 */ $i = 1; while ($i <= 10): echo "$i"; $i++; endwhile; echo "<br><br>"; /* contoh 3 */ $i = 1; while ($i <= 6) { echo "<h$i>Heading $i</h$i>"; $i++; } ?> 38 | Penjelasan : Program di atas merupakan beberapa variasi perulangan dengan while. Contoh yang pertama (baris 3-6) merupakan bentuk yang paling umum dipakai. Blok perintah (baris 5) akan dijalankan selama pemeriksaan kondisi pada baris ke-4 bernilai TRUE. Contoh kedua merupakan bentuk lain dari while, bentuk ini jarang digunakan. Pada contoh ketiga, penggunaan perulangan untuk menampilkan tulisan dengan format <H1> sampai <H6> Contoh Program Struktur Perulangan dengan Do...While. Nama File : dowhile.php <?php $i = 1; do { echo "$i "; $i+=2; } while ($i <= 20); ?> Penjelasan : Program di atas akan menampilkan bilangan ganjil antara 1 sampai 20 menggunakan struktur perulangan do..while. Pada struktur perulangan do...while, pemeriksaan kondisi berada di bawah. Struktur Break dan Continue Contoh Program Struktur Break dan Continue. Nama File : break.php <?php for ($i=1; $i<10; $i++) { if ($i == 5) continue; if ($i == 8) break; echo "$i "; 39 | } ?> Penjelasan : Dari program di atas, dapat disimpulkan bahwa perintah continue akan melanjutkan proses perulangan tanpa melewati (meng-eksekusi) baris perintah di bawahnya. Jadi perintah pada baris 6-8 akan dilewati (5 tidak akan tercetak) Sedangkan dengan perintah break akan menyebabkan program menghentikan perulangan (langsung keluar dari perulangan) 40 | Array Array adalah kumpulan beberapa data yang disimpan dalam satu variabel. Jadi, berbeda dengan variabel sebelumnya yang hanya menyimpan satu nilai saja, array dapat menampung lebih dari satu nilai. Sebagai contoh, kita akan menyimpan data teman-teman kita dalam satu variabel $teman. Ada tiga orang teman yang akan kita masukkan ke dalam variabel tersebut. Secara visual, dapat digambarkan sebagai berikut : Charlie Ani Budi $teman Tiap nilai dalam array (disebut elemen) diakses dengan menggunakan index. PHP mengenal dua macam index, yaitu index numerik dan Index asosiatif. Index numerik menggunakan angka untuk menandai tiap elemen, sedangkan index asosiatif memberi nama untuk masing-masing elemen. Inisialisasi array Inisialisasi (mengisi nilai) array $teman di atas dilakukan dengan cara sebagai berikut : $teman = array(“Charlie”, “Ani”, “Budi”); Kode di atas akan menjadikan $teman array berindex numerik. Selain dengan cara di atas, kita juga dapat membuat array yang sama dengan cara : $teman[] = “Charlie”; $teman[] = “Ani”; $teman[] = “Charlie”; hasilnya adalah array berindeks numerik yang dapat digambarkansebagai berikut : Charlie Ani Budi 0 1 2 $teman untuk membuat array berindex asosiatif, kita membutuhkan label atau nama untuk masing-masing elemen. Contoh di atas akan dikembangkan agar dapat menyimpan nomer telepon masing-masing teman. 41 | Gambaran visualnya adalah sebagai berikut : Charlie 123 Ani 528 Budi 456 $rekan pada gambar di atas, nama masing-masing teman akan dijadikan label untuk nilai nomer telepon yang disimpan. Kode programnya adalah sebagai berikut : $rekan = array (“Charlie”=>123, “Ani”=>528, “Budi”=>456); Atau $rekan = array(“Charlie”=>123); $rekan [“Ani”] = 528; $rekan [“Budi”] = 456; Contoh Array : <HTML> <HEAD> <TITLE>Contoh Array</TITLE> </HEAD> <BODY> <?php $kota = array ("Yogya", "Solo", "Bandung", "Bogor"); print("Elemen berindeks 0: $kota[0] <BR>\n"); print("Elemen berindeks 1: $kota[1] <BR>\n"); print("Elemen berindeks 2: $kota[2] <BR>\n"); print("Elemen berindeks 3: $kota[3] <BR>\n"); ?> </BODY> </HTML> 42 | Navigasi array Navigasi (mengakses nilai) array dapat dilakukan dengan looping. Misalnya untuk menampilkan isi array berindex numerik di atas, kita akan menggunakan kode seperti berikut : for($i=0; $i<length($teman);$i++){ echo(“Array \$teman index ke [$i] adalah $teman[$i]”); echo(“<br>”); } Contoh : <HTML> <HEAD> <TITLE>Contoh Array</TITLE> </HEAD> <BODY> <?php $kota = array ("Yogya", "Solo", "Bandung", "Bogor"); $jumlah = count($kota); for ($i = 0; $i < $jumlah; $i++) print("Elemen berindeks $i: $kota[$i] <BR>\n"); ?> </BODY> </HTML> 43 | Untuk mengakses array berindex asosiatif, kita tidak dapat menggunakan loop seperti di atas, karena label/index elemen disimpan dalam bentuk string. Loop untuk mengakses array berindex asosiatif dapat dilihat pada sampel kode di bawah : while(list($index, $nilai) = each($rekan)){ echo(“Array \$rekan index $index berisi nilai $nilai”); echo(“<br>”); } ada dua fungsi yang terlibat di atas, each dan list. Fungsi each berguna untuk mengakses masing-masing elemen dalam array. Elemen yang dihasilkan adalah pasangan key dan value, dimana key adalah indexnya dan value adalah isinya. Pasangan tersebut akan dipisahkan oleh fungsi list dan dimasukkan ke dalam variabel $index dan $nilai. Fungsi-fungsi array Sort Elemen-elemen dalam array dapat diurutkan dengan menggunakan fungsi sort(). Contoh penggunaannya adalah sebagai berikut : sort($teman); for($i=0; $i<length($teman);$i++){ echo(“Array \$teman index ke [$i] adalah $teman[$i]”); echo(“<br>”); } akan menghasilkan output : Array teman index ke 0 adalah Ani Array teman index ke 1 adalah Budi Array teman index ke 2 adalah Charlie 44 | Asort dan Ksort Asort digunakan untuk mengurutkan asosiatif array menurut isinya. Contoh penggunaan : asort($rekan); while(list($index, $nilai) = each($rekan)){ echo(“Array \$rekan index $index berisi nilai $nilai”); echo(“<br>”); } akan menghasilkan output : Array $rekan index Charlie berisi nilai 123 Array $rekan index Budi berisi nilai 456 Array $rekan index Ani berisi nilai 528 ksort digunakan untuk mengurutkan asosiatif array menurut indexnya. Contoh penggunaan : ksort($rekan); while(list($index, $nilai) = each($rekan)){ echo(“Array \$rekan index $index berisi nilai $nilai”); echo(“<br>”); } akan menghasilkan output : Array $rekan index Ani berisi nilai 528 Array $rekan index Budi berisi nilai 456 Array $rekan index Charlie berisi nilai 123 45 | Fungsi Function adalah kumpulan beberapa statement yang dibuat dengan tujuan menyelesaikan satu tugas tertentu. Return value dan parameter Perhatikan kode berikut : function add($a, $b){ return $a + $b; } Function sederhana di atas akan menerima masukan berupa dua angka. Kemudian kedua angka tersebut akan dijumlahkan, dan hasilnya dikembalikan kepada pemanggil function. Nilai yang dikembalikan tersebut disebut return value. Sedangkan nilai yang dimasukkan ke dalam function ($a dan $b) disebut parameter. Deklarasi function Ada beberapa hal utama yang perlu diperhatikan dalam deklarasi function pada PHP. nama function parameter function body Contoh function: function addNumber($x, $y) { z = x + y; echo(z); } function jumlahkanlah(int x, int y) { z = x + y; return z; } 46 | Perhatikan contoh function addNumber di atas. Baris satu merupakan deklarasi function. deklarasi berisi : keyword function nama function parameter Parameter adalah nilai yang dimasukkan ke dalam function untuk diproses sehingga menghasilkan output. Nama function ditentukan dengan memenuhi aturan sebagai berikut : Tidak boleh sama dengan function yang telah ada dalam PHP. Hanya boleh terdiri dari huruf, angka, dan garis bawah (underscore) Tidak boleh diawali dengan angka contohnya: function 4uOnly(){} // tidak boleh Implementasi function Contoh function: 1 function addNumber($x, $y) 2{ 3 z = x + y; 4 echo(z); 5} 6 7 function jumlahkanlah(int x, int y) 8{ 9 z = x + y; 10 return z; 11 } Perhatikan contoh function addNumber di atas. Perhatikan baris 2 sampai 4. Function body dibatasi oleh sepasang { dan } Function body berisi instruksi yang harus dilakukan komputer untuk menghasilkan output yang diinginkan. 47 | Baris 3 menyuruh komputer untuk membuat satu variabel bernama z yang isinya adalah hasil penjumlahan x dan y. x dan y didapat dari input yang diberikan user. Baris 4 menyuruh komputer untuk menampilkan hasil perhitungan ke layar. Bedakan dengan baris 4 pada function jumlahkanlah yang memerintahkan komputer untuk menampilkan hasil perhitungan di layar Contoh penggunaan function hasil = jumlahkanlah(4,5); addNumber(4,5); 48 | Pengenalan Mysql MySQL Merupakan software sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread dan multi-user. MySQL AB membuat MySQL tersedia sebagai software gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL. MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan Michael "Monty" Widenius. Membuat Database Untuk membuat database pada My SQL digunakan perintah Mysql>Create Database nama _database; Untuk dapat melihat database pertama-tama buka dulu program MySQL. Setelah masuk MySQL ,terdapat bentuk prompt “mysql>” ini adalah tempat untuk menuliskan perintah-perintah MySQL. Tiap perintah SQL harus diakhiri dengan tanda titik koma ”;” Catatan : - Untuk penulisan database tidak diperbolehkan menggunakan spasi atau karakter khusus Lainnya - Nama sebuah database tidak boleh diawali oleh angka Untuk melihat database yang telah dibuat atau database yang telah ada pada server dapat menggunakan perintah show. Sebagai contoh Mysql>show database; 49 | Setelah database dibuat, untuk membuat tabel di dalamnya user harus masuk keda tabase tersebut terlebih dahulu. Caranya dengan mengetikkan perintah (menggunakan console) : use <nama database> Perintah di atas menyatakan pemanggilan terhadap databases. Jika database ditemukan didalam server maka akan muncul pemberitahuan bahwa database tersebut siap untuk digunakan, namun sebaliknya jika database tidak ditemukan akan muncul pemberitahuan atau pesan gagal. Membuat Table Perlu diperhatikan bahwa dalam pembuatan table, apakah database sudah dipanggil seblumnya? Jika belum, panggil database tersebut atau buat database baru jika belum tersedia. Hal ini dilakukan agara table yang akan dibuat memiliki tempat pada database. Table, sebagai tempat penampungan data memiliki dua bagian utama yaitu nama dan tipe data. Ada dua cara dalam membuat table. Pertama, dengan mendeklarasikan foreign key pada tiap-tiap table secara implisit. Kedua, tanpa mendeklarasikan foreign key di tiap-tiap table. Foreign key dibutuhkan untuk menjaga constraint data database. Cara pertama lebih memudahakan programmer dalam membuat program yang menggunakan database, namun respon Mysql akan relative lebih lambat. Sedangkan cara kedua, programmer akan mengeluarkan tenaga lebih untuk membuat sendiri deklarasi foreign key dengan kode program, namun respon Mysql lebih cepat. Cara pertama dalam membuat tabel : create table anggota ( id_anggota varchar(10) primary key not null, id_pelanggan varchar(10) not null, bidang varchar(25), index(id_pelanggan), foreign key (id_pelanggan) references pelanggan(id_pelanggan) on update cascade on delete cascade ); 50 | Cara kedua dengan perintah : create table anggota ( id_anggota varchar(10) primary key not null, id_pelanggan varchar(10) not null, bidang varchar(25)); Perbedaan dari kedua perintah create table di atas terletak pada pendeklarasian foreign key. 51 | Manipulasi Database Menghapus Database Untuk menghapus database yang tidak dipakai atau database yang rusak. Pengguna dapat menggunakan perintah drop. Struktur penulisan untuk menghapus database sebagai berikut ini : Drop database nama_database; Sebagai contoh ; Mysql > drop database distributor; Menghapus table Untuk menghemat memori, maka table-table yanag sudah tidak digunakan lagi dapat dihapus. Dalam SQL penghapusan sebuah table dapat dilakukan dengan perintah drop Syntax; Drop table <nama table>; Contoh: Menghapus table obatdari basis data. drop table obat; Merubah Struktur Table UPDATE Update merupakan perintah untuk mengubah data yang sudah ada di dalam tabelPerintah update memiliki sintaks secara umum sebagai berikut Contoh perintah update sebagai berikut : Update <tabel> Set <nama kolom> = <value> Where <kondisi> Update WHERE ID_kota='BDG' harga SET Biaya = 19000 AND Kode_jenis=2 AND Berat_awal=2 AND Berat_akhir=3 AND Biaya= 17000 52 | Alter Tabel Jika perintah update untuk memutakhirkan data dalam tabel, maka alter tabe ldigunakan untuk memutakhirkan atribut dan kolom dalam tabel. Bentuk umum dari alter tabel sbb : Alter table <nama tabel> Change <nama kolom> <update kolom> Contoh untuk perintah alter tabel sebagai berikut : Alter table pengguna Change ID_pengguna ID_pengguna INT(10) NOT NULL 53 | Koneksi Database Langkah-langkah koneksi PHP-MySQL 1. Membuka koneksi ke server MySQL mysql_connect() Digunakan untuk melakukan uji dan koneksi kepada server database MySQL. Sintaks : $conn = mysql_connect (”host”,”username”,”password”); $conn adalah nama variabel penampung status hasil koneksi kepada database. host adalah nama host atau alamat server database MySQL. username adalah nama user yang telah diberi hak untuk dapat mengakses server database. password adalah kata sandi untuk username untuk dapat masuk ke dalam database. 2. Memilih database yang akan digunakan di server mysql_select_db() Digunakan untuk melakukan koneksi kepada database yang dalam server yang berhasil dikoneksi dengan perintah mysql_connect(). Sintaks : $pilih = mysql_select_db(”namadatabase”,$conn); $pilih berisi status koneksi kepada database. $conn merupakan koneksi kepada server database yang berhasil. namadatabase adalah nama database yang akan dikenai proses. 3. Mengambil sebuah query dari sebuah database. mysql_query() Digunakan untuk melakukan eksekusi perintah SQL untuk memanipulasi database yang berhasil dilakukan koneksinya menggunakan mysql_select_db(). 54 | Sintaks : $hasil = mysql_query(”SQL Statement”); $hasil akan berupa record set apabila SQL Statement berupa perintah select. 4. Mengambil record dari database a. mysql_fetch_array() Digunakan untuk melakukan pemrosesan hasil query yang dilakukan dengan perintah mysql_query(), dan memasukkannya ke dalam array asosiatif, array numeris atau keduanya. Sintaks : $row = mysql_fetch_array($hasil); $row adalah array satu record dari record $hasil yang diproses nomor record sesuai dengan nomor urut dari proses mysql_fetch_array yang sedang dilakukan. $hasil adalah record set yang akan diproses. b. mysql_fetch_assoc() Fungsi ini hampir sama dengan fungsi mysql_fetch_array(), hanya saja array yang dihasilkan hanya array asosiatif. Sintaks : $row = mysql_fetch_assoc($hasil); c. mysql_fetch_row() Fungsi ini hampir sama dengan fungsi mysql_fetch_array(), hanya saja array yang dihasilkan hanya array numeris. Sintaks : $row = mysql_fetch_row($hasil); 55 | d. mysql_num_rows() Fungsi ini digunakan untuk menghitung jumlah record yang ada pada database. Sintaks : $jml = mysql_num_rows($hasil); $jml akan memiliki nilai sesuai dengan jumlah record yang ada. 56 | Security data Cookies Cookie sering digunakan untuk mengenali user. Cookie adalah suatu file kecil yang ditanam server pada komputer user. Setiap waktu komputer yang sama meminta suatu halaman dengan suatu browser, yang juga akan mengirim cookie. Dengan PHP, kita dapat membuat dan mendapatkan kembali nilai cookie. Membuat Cookie Fungsi setcookie() digunakan untuk mengeset cookie. Catatan : Fungsi setcookie() harus muncul SEBELUM <html> tag. Syntax setcookie(name, value, expire, path, domain); Contoh Pada contoh di bawah ini, kita akan membuat cookie dengan nama "user" dan memberi nilai "Alex Porter" padanya. Kita juga menentukan cookie akan berakhir setelah satu jam: <?php setcookie("user", "Alex Porter", time()+3600); ?> <html> <body> </body> </html> Catatan : Nilai dari cookie secara otomatis dikode-URL-kan ketika mengirim cookie, dan secara otomatis didekodekan ketika diterima (Unruk mencegah URLencoding, gunakan setrawcookie() sebagai penggantinya). Mendapatkan Kembali Nilai Cookie Variabel PHP $_COOKIE digunakan untuk mendapatkan kembali suatu nilai cookie. Pada contoh di bawah ini, Kita mendapatkan kembali nilai cookie yang bernama "user" dan meenampilkannya pada suatu halaman : 57 | <?php // Print a cookie echo $_COOKIE["user"]; // A way to view all cookies print_r($_COOKIE); ?> Pada contoh berikut ini, kita menggunakan fungsi isset() untuk mengetahui apakah cookie telah diset : <html> <body> <?php if (isset($_COOKIE["user"])) echo "Welcome " . $_COOKIE["user"] . "!<br />"; else echo "Welcome guest!<br />"; ?> </body> </html> Menghapus Cookie Ketika menghapus cookie, kita akan yakin bahwa masa berakhirnya adalah telah lewat. Contoh menghapus : <?php // set the expiration date to one hour ago setcookie("user", "", time()-3600); ?> Browser yang TIDAK Mendukung Cookies Jika aplikasi kita berada pada browser yang tidak mendukung cookies, kita harus menggunakan metode lain untuk melewatkan informasi dari suatu halaman ke halaman 58 | lain pada aplikasi kita. Satu metode itu adalah melewatkan data melalui form (form dan user input digambarkan lebih awal pada tutorial ini). Form di bawah ini melewatkan user input ke "welcome.php" ketika user mengeklick tombol "Submit" : <html> <body> <form action="welcome.php" method="post"> Name: <input type="text" name="name" /> Age: <input type="text" name="age" /> <input type="submit" /> </form> </body> </html> Mendapatkan kembali nilai-nilai dalam file "welcome.php" adalah seperti ini : <html> <body> Welcome <?php echo $_POST["name"]; ?>.<br /> You are <?php echo $_POST["age"]; ?> years old. </body> </html> Session Variabel PHP session digunakan untuk menyimpan informasi atau mengubah setting bagi user session. Variabel session mengandung informasi tentang satu user tunggal, dan tersedia pada semua halaman dalam satu aplikasi. Variabel-Variabel PHP Session Ketika kita bekerja dengan satu aplikasi, kita membukanya, melakukan beberapa perubahan, dan kemudian kita menutupnya. Ini seperti Session. Komputer mengetahui siapa kita. Juga mengetahui kapan kita memulai aplikasi dan kapan kita mengakhirinya. 59 | Akan tetapi di internet ada satu masalah : web server tidak mengetahui siapa kita dan apa yang kita kerjakan, karena alamat HTTP tidak mengurusi state. Suatu PHP session memecahkan masalah ini dengan mengijinkan kita untuk menyimpan informasi user pada server untuk penggunaan kemudian (seperti : username, shopping items, dsb). Namun demikian, informasi session adalah temporer dan akan dihapus setelah user telah keluar dari website. Jika kita membutuhkan penyimpanan permanen, kita seharusnya menyimpan data di suatu database. Sessions bekerja dengan membuat sebuah unique id (UID) untuk setiap pengunjung dan menyimpan variabel-variabel berdasar UID tersebut. UID dapat disimpan di suatu cookie atau diperbanyak di dalam URL. Memulai PHP Session Sebelum kita menyimpan informasi user di dalam PHP session, kita pertama kali harus memulai session itu. Catatan : Fungsi session_start() harus muncul SEBELUM <html> tag: <?php session_start(); ?> <html> <body> </body> </html> Kode di atas akan mendaftarkan session dari user dengan server, mengijinkan kita untuk memulai penyimpanan informasi user, dan memberikan suatu UID untuk session dari user itu. Menyimpan Variabel Session Cara yang tepat untuk menyimpan dan mendapatkan kembali variabel session adalah dengan menggunakan variabel PHP $_SESSION : <?php session_start(); // store session data $_SESSION['views']=1; ?> 60 | <html> <body> <?php //retrieve session data echo "Pageviews=". $_SESSION['views']; ?> </body> </html> Pada contoh di bawah ini, kita membuat suatu page-views counter sederhana. Fungsi isset() mengecek apakah variabel "views" telah diset. Jika "views" telah diset, kita dapat menaikkan counter. Jika "views" tidak ada, kit membuat suatu variabel "views", dan menge-setnya menjadi 1 : <?php session_start(); if(isset($_SESSION['views'])) $_SESSION['views']=$_SESSION['views']+1; else $_SESSION['views']=1; echo "Views=". $_SESSION['views']; ?> Menghapus Session Jika kita menginginkan menghapus beberapa data session, kita dapat menggunakan fungsi unset() atau fungsi session_destroy(). Fungsi unset() digunakan untuk mengosongkan variabel session tertentu : <?php unset($_SESSION['views']); ?> 61 | Kita juga dapat menghapus session sepenuhnya dengan memanggil fungsi session_destroy() : <?php session_destroy(); ?> Catatan : Fungsi session_destroy() akan mereset session kita, dan kita akan kehilangan seluruh data session yang tersimpan. Penggunaan beberapa fungsi session pada proses login : Script code halaman login (login.php) <html> <body background="images/2.jpg"> <form action="proses_login.php" method="post"> &nbsp;&nbsp;&nbsp; <p>&nbsp;</p> <p>&nbsp;</p> <center> <table width="338" height="154" align="center" bordercolor="#FFFFFF" background="images/table.jpg"> <tr> <font color="#669900"> <strong> <h1>ADMIN LOGIN</h1> </strong> </font> &nbsp;&nbsp; <th width="90" height="48">Username</th> <th width="27">:</th> 62 | <td width="202"><input name="username" type="text" size="20"> </td> </tr> <tr> <th height="47">Password </th> <th>:</th> <td> <input name="password" type="password" size="20"> </td> </tr> <tr> <td height="26" colspan="3"><font>&nbsp;&nbsp;</font> <input type="submit" value="Login"></td> </tr> <tr> <td height="21" colspan="3">&nbsp;</td> </tr> </table> </center> </form> </body> </html> Tampilan halaman login berdasarkan script diatas (login.php) : 63 | Script kode untuk koneksi ADOdb (connection.php): <? require_once("adodb/adodb.inc.php"); $db = &ADONewConnection('mysql'); $db->Connect('localhost', 'root', '', 'tugassession'); ?> Script ini merupakan script yang berfungsi untuk mengkoneksikan antara PHP dan database yang digunakan dengan menggunakan koneksi ADOdb. Pada script tersebut, sintak Require_once merupakan perintah untuk memanggil file ADOdb yang telah kita telah letakkan di file PHP kita. $db = &ADONewConnection('mysql') merupakan perintah untuk melakukan koneksi dengan MySQL dan $db- >Connect('localhost', 'root', '', 'tugassession') merupakan perintah untuk melakukan koneksi di localhost , dengan username root, password kosong, yang mana nantinya akan terkoneksi ke database tugassession Script kode untuk proses login (proses_login.php) : <? session_start(); include('connection.php'); $username = $_POST['username']; $password = $_POST['password']; $check_password = $db->GetOne("SELECT password FROM t_user WHERE username = '$username' "); if(empty($username)) { echo"isi semua"; } else if(empty($username)) 64 | { echo"isi semua"; } else if(empty($password)) { echo"isi semua"; } else if ($check_password ==($password)) { $_SESSION['access'] = true; header('location: admin.php'); } else { $_SESSION['access'] = false; echo "Terdapat kesalah pada password dan username anda"; } ?> Penjelasan : Pada script tersebut, Session_Start() merupakan sebuah sintak yang menandakan bahwa session tersebut telah mulai, ia akan menginisiasikan mulainya session. Selanjutnya $check_password = $db->GetOne("SELECT password FROM t_user WHERE username = '$username' ");sintak ini akan memacu dilakukannya pengecekan terhadap password dan username yang diinputkan yang mana password dan username tersebut akan dicocokkan dengan data yang ada pada database. Setelah sintak pengecekan selanjutnya terdapat sintak $_SESSION['access'] = true, yang mana sintak ini memungkinkan user yang telah menginputkan username dan password dalam kondisi sukses untuk memiliki hak akses dalam web ini, dimana user yang memiliki hak akses tersebut dan akan di arahkan ke admin.php. Selanjutnya sintak $_SESSION['access'] = 65 | false menandakan bahwa username tersebut tidak memiliki hak akses dalam web ini yang mana kondisi ini akan menampilkan tampilan berupa informasi kesalahan. Beberapa kondisi yang diciptakan dari script diatas diantaranya adalah : 1. Apabila user melakukan login dengan melakukan penginputan data yang tidak lengkap atau dengan kata lain user mengosongkan salah satu atau kedua dari field isian baik pada field username maupun field password seperti terlihat pada capture dibawah ini, ~ Mengosongkan field password ~ Mengosongkan field username 66 | Apabila kondisi tersebut dijalankan maka akan muncul tampilan sebagai berikut 2. Kondisi apabila terdapat kesalahan pada penginputan password ataupun username ~ Kesalahan penginputan password ~ Kesalahan penginputan password 67 | Apabila kondisi tersebut dijalankan maka akan muncul tampilan sebagai berikut : 3. Kondisi sukses, dimana tidak terdapat kesalahan penginputan baik pada username dan password. Setelah user mengklik event login maka akan muncul tampilan halaman admin yang dituju. 68 | Script kode untuk logout (logout.php): <? session_start(); session_destroy(); header("location: login.php"); ?>> Penjelasan : Pada script tersebut, session_start() m erupakan sintak untu memulai session, atau menginisisasi mulainya session, selanjutnya sintak session_destroy(); merupakan sintak yang di gunakan untuk menghancurkan/menutup session yang telah dimulai saat ini, dan sintak header("location: login.php") merupakan sintak yang digunakan untuk mengarahkan user ke login.php yang mana pada halaman tersebut user dapat masuk kembali ke dalam hak akses web ini dengan menggunakan session yang baru. 69 | Building Web Aplikasi I Membuat Database Yang pertama dilakukan adalah membuat database dan membuat tabel. 1. Buat Database dengan nama “karyawan_db” 2. Buat Table dengan nama “ pegawai”, berisikan ketentuan SQL sebagai berikut: 1 2 3 4 5 6 CREATE TABLE `karyawan_db`.`pegawai` ( `nip` VARCHAR( 15 ) NOT NULL , `nama` VARCHAR( 25 ) NOT NULL , `jabatan` VARCHAR( 15 ) NOT NULL , `nmfile` VARCHAR( 50 ) NOT NULL , PRIMARY KEY ( `nip` ) ); Menulis Coding Php koneksi sql : <?php $host="localhost"; $user="root"; $pass=""; 70 | $db="karyawan_db"; $koneksi=mysql_connect($host,$user,$pass) or die (mysql_error()); mysql_select_db($db,$koneksi) or die (mysql_error()); ?> Tampilan input : pada tampilan ini memakai form yang terdapat 4 fungsi button yaitu simpan, hapus, browse dan refresh. Scriptnya : Input data Pegawai: <br> <form action="index.php" method="post" enctype="multipart/form-data"> <pre> Nip : <input type="text" name="nip" maxlength="10"> &lt;&lt;10 Karakter&gt;&gt; Nama : <input type="text" name="nama"> Jabatan : <input type="text" name="jabatan"> Upload : <label><input type="file" name="file_gambar" id="fileField"></label> 71 | <input type="submit" value="Simpan" name="simpan"> <input type="reset" value="Hapus"> <input type="submit" value="Refresh" name="Refresh"> </pre> </form> setelah design input selesai maka saatnya mengkoneksikan ke dalam database. Buat dahulu pada phpmyadmin. Masuk ke localhost/phpmyadmin create new database create new table (bikin nama tabelnya) isi data yang diinginkan go untuk menginput datanya : $kueri=mysql_query("insert into pegawai values('$nip','$nama','$jabatan','$nmfile')",$koneksi)or die (mysql_error());; untuk menampilkan data menggunakan : $query=mysql_query("select * from pegawai order by nama",$koneksi) or die (mysql_error()); untuk mengeluarkan hasil query menggunakan : while ($row=mysql_fetch_array($query)) { ……………. } untuk mengedit data : ubah $kueri_ubah=mysql_query("update pegawai set gambar='$foto', nip='$nip', nama='$nama', jabatan='$jabatan' where nip='$nip'",$koneksi)or die (mysql_error());; 72 | hapus $kueri_del=mysql_query("delete from pegawai where nip='$nip'",$koneksi)or die (mysql_error());;// query untuk menghapus coding selengkapnya ada di lampiran Lampiran Server.php <?php $host="localhost"; $user="root"; $pass=""; $db="karyawan_db"; $koneksi=mysql_connect($host,$user,$pass) or die (mysql_error()); mysql_select_db($db,$koneksi) or die (mysql_error()); ?> index.php <html> <head> <title>Input Output</title> </head> <body> <br> Input data Pegawai: <br> <form action="index.php" method="post" enctype="multipart/formdata"> <pre> Nip : <input type="text" name="nip" maxlength="10"> &lt;&lt;10 Karakter&gt;&gt; 73 | Nama : <input type="text" name="nama"> Jabatan : <input type="text" name="jabatan"> Upload <label><input type="file" name="file_gambar" : id="fileField"></label> <input type="submit" value="Simpan" name="simpan"> type="reset" value="Hapus"> <input <input type="submit" value="Refresh" name="Refresh"> </pre> </form> <?php // ambil variabel yang dikirim dari form $nip = $_POST['nip']; $nama = $_POST['nama']; $jabatan = $_POST['jabatan']; $OK = $_POST['simpan']; $hapus= $_GET['hapus']; if($hapus=="ok"){ // cek apakah tombol hapus di klik include 'server.php'; // mengikutsertakan file server.php $nip = $_GET['nip']; $foto=$_GET['foto']; unlink("file_yang_diupload/$foto"); // menghapus file yang berada di dalam direktori $kueri_del=mysql_query("delete from pegawai where nip='$nip'",$koneksi)or die (mysql_error());;// query untuk menghapus if($kueri_del){ echo "<script language=\"javascript\">"; // untuk menampilkan pesan notifikasi echo "alert (\"Hapus berhasil\")"; echo "</script>"; } } // akhir program hapus----------------------------------------------------if($OK=="Simpan"){ // jika tombol simpan di klik 74 | if ((!$nip) or (!$nama) or (!$jabatan)){ // cek apakah ada inputan kosong echo "<script language=\"javascript\">"; echo "alert (\"Silahkan masukan semua data\")"; echo "</script>"; }else{ include 'server.php'; //upload file $nm_file = $_FILES['file_gambar']['tmp_name']; $nmfile = $_FILES['file_gambar']['name']; copy($nm_file, "file_yang_diupload/$nmfile"); $kueri=mysql_query("insert into pegawai values('$nip','$nama','$jabatan','$nmfile')",$koneksi)or die (mysql_error());; if($kueri){ echo "<script language=\"javascript\">"; echo "alert (\"Simpan sukses\")"; echo "</script>"; } } } ?> <br> <br> <?php include 'tampil.php'; ?> </body> </html> edit_pegawai.php <HTML> <HEAD> <TITLE>Ubah data</TITLE> </HEAD> 75 | <BODY> <p> <?php $ubah=$_POST['ubah']; $nip=$_GET['nip']; $nama=$_GET['nama']; $jabatan=$_GET['jabatan']; $foto=$_GET['foto']; if($ubah=="ok"){ $nip=$_POST['nip']; $nama=$_POST['nama']; $jabatan=$_POST['jabatan']; $foto=$_POST['foto']; $nm_file = $_FILES['foto_baru']['tmp_name']; if($nm_file){ unlink("file_yang_diupload/$foto"); $nm_file = $_FILES['foto_baru']['tmp_name']; $foto = $_FILES['foto_baru']['name']; copy($nm_file, "file_yang_diupload/$foto"); } include 'server.php'; $kueri_ubah=mysql_query("update pegawai set gambar='$foto', nip='$nip', nama='$nama', jabatan='$jabatan' where nip='$nip'",$koneksi)or die (mysql_error());; if($kueri_ubah){ echo "<a href=\"\" onClick=\"self.close();\">Sukses diubah, tutup window ini</a>"; exit; } } ?> Input data Pegawai: </p> <table width="665" border="1"> <tr> <td width="471"><form action="edit_pegawai.php" method="post" enctype="multipart/form-data"> <pre> 76 | Nip : <input type="text" name="nip" value="<?=$nip?>"> Nama : <input type="text" name="nama" value="<?=$nama?>"> Jabatan : <input type="text" name="jabatan" value="<?=$jabatan?>"><input type="hidden" name="foto" value="<?=$foto?>" id="hiddenField"> Foto : <label><input type="file" name="foto_baru" id="fileField"></label> *) Mengupload foto berarti merubah foto <input type="submit" value="ok" name="ubah"> <input type="reset" value="Close" onClick="self.close();"> </pre> </form> </td> <td width="178" valign="middle"><img src="file_yang_diupload/<?=$foto?>" width="178" height="130"></td> </tr> </table> <p><br> </p> </BODY> </HTML> Tampil.php <HTML> <HEAD> <TITLE>New Document</TITLE> <script language="javascript"> function buka(target,nama,typejendela) { window.open(target,nama,typejendela); } </script> </HEAD> <BODY> <table width="550" border="1" bordercolor="#000000" bgcolor="#FFFFFF"> <tr > <td width="21" align="center">No</td> 77 | <td width="30" align="center">Nip</td> <td width="100" align="center">Nama</td> <td width="30" align="center">jabatan</td> <td width="21" align="center">Foto</td> <td width="21" align="center">HAPUS</td> <td width="21" align="center">UBAH</td> </tr> <?php include 'server.php'; $query=mysql_query("select * from pegawai order by nama",$koneksi) or die (mysql_error()); while ($row=mysql_fetch_array($query)) { $no=$no+1; echo "<tr> <td>$no</td> <td>$row[nip]</td> <td>$row[nama]</td> <td >$row[jabatan]</td> <td align=\"center\" ><img src=\"file_yang_diupload/$row[gambar]\" width=\"84\" height=\"87\"></img></td> <td align=\"center\"><a href=\"index.php?hapus=ok&nip=$row[nip]&foto=$row[gambar]\">YA</a></td> <td align=\"center\">[<a href=\"JavaScript:buka('edit_pegawai.php?nip=$row[nip]&nama=$row[nama]& jabatan=$row[jabatan]&foto=$row[gambar]','edit_soal', 'scrollbars=0,menubar=0,toolbar=0,status=0,width=700,left=40, top=50,height=300,resizeable=0')\">YA</a>]</td> </tr>"; } ?> </table> </BODY> </HTML> 78 | Building Web Aplikasi II Membuat Database Yang pertama dilakukan adalah membuat database dan membuat tabel. 1. Buat Database dengan nama “dbpendaftaran” 2. Buat Table dengan nama “ tbpendaftaran”, berisikan ketentuan field sebagai berikut: Menulis Coding PHP Index.php <? session_start();?> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> <style type="text/css"> <!-.style1 { font-size: 36px; font-weight: bold; } body { background-color: #00CCFF; } --> </style> </head> <body> <div align="center">SELAMAT DATANG DISINI</div> <form id="form1" name="form1" method="post" action="otentikasi.php"> <div align="center"><br /> <a href="daftar/index.php">SILAHKAN DAFTAR DAHULU </a></strong> 79 | </p> </div> <p align="center"><strong> <? if($_SESSION["username"]){?> <a href="keluar.php">logout</a> <? }else{?> LOGIN</strong></p> <div align="left"> <table width="275" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td width="62" rowspan="2"><img src="Images/edit.gif" width="65" height="56"></td> <td width="70"><label>Username</label></td> <td width="120"><input name="username" type="text" id="username" size="20" /></td> </tr> <tr> <td height="39"><label>Password</label></td> <td><input name="password" type="password" id="password" size="20" /></td> </tr> <tr> <td colspan="3" align="center" valign="middle"><label></label> <label> <input type="submit" name="Submit" value="LOGIN" /> <? } ?> </label></td> </tr> </table> </div> <p align="center">&nbsp;</p> <p>&nbsp;</p> </form> <p>&nbsp;</p> </body> </html> 80 | Tampilan Index.php Buat Folder daftar, kemudian buat file Index.php Index.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>daftar </title> <style type="text/css"> <!-body { background-color: #66FFFF; } --> </style></head> <body> <? include "../koneksi.php";?> <?php //rumus edit $stat=$_GET["stat"]; if($stat =="Edit"){ $perintah="select * from pendaftaran where id='$id'"; $lihat=mysql_query($perintah); while ($data=mysql_fetch_array($lihat)){ $id=$data["id"]; $kode_mhs=$data["kode_mhs"]; $nama_mhs=$data["nama_mhs"]; $jurusan=$data["jurusan"]; $semester=$data["semester"]; 81 | $sesi=$data["sesi"]; $tanggal_masuk=$data["tanggal_masuk"]; $jam=$data["jam"]; } }//if stat =edit ?> <? $simpan=false; if($stat==""){$stat="Simpan";$simpan=true;} elseif(empty($stat)){$stat="Simpan";$simpan=true;} if($simpan==true){ //rumus autoCode $cariAhir="select * from pendaftaran order by id desc"; $CA=mysql_query($cariAhir); $dCA=mysql_fetch_array($CA); $kode_mhs=$dCA["kode_mhs"];//KM-00001 $kode=substr($kode_mhs,3,5);//00001 $kode=$kode+1; if($kode <10){$kode_mhs="KM-0000".$kode;} else if($kode <100){$kode_mhs="KM-000".$kode;} else if($kode <1000){$kode_mhs="KM-00".$kode;} else if($kode <10000){$kode_mhs="KM-0".$kode;} else if($kode <100000){$kode_mhs="KM-".$kode;} else{$kode_mhs="KM".$kode;} } ?> <form id="form1" name="form1" method="post" action="index.php"> <div align="center"><strong>DAFTAR <? echo strtoupper($stat);?> MAHASISWA </strong>:<? echo date("Y/m/d");?><br /> </div> <table width="340" border="2" align="center" cellpadding="0" cellspacing="0"> <tr> <td width="125" height="32"><strong>KODE MHS </strong></td> <td width="3">:</td> <td width="331"><label> <input name="kode_mhs" type="text" id="kode_mhs" size="10" value="<? echo $kode_mhs;?>"/> </label></td> </tr> <tr> <td><strong>NAMA MHS </strong></td> <td>:</td> <td><label> <input name="nama_mhs" type="text" id="nama_mhs" size="28" value="<? echo $nama_mhs;?>"/> </label></td> </tr> <tr> <td height="35"><strong>JURUSAN</strong></td> <td>:</td> <td> <select name="jurusan" id="jurusan"> 82 | <option value="<? echo $jurusan;?>"><? echo $jurusan;?></option> <option value="Komputer">Komputer</option> <option value="Akuntasni">Akuntansi</option> <option value="Biologi">Biologi</option> </select> </td> </tr> <tr> <td bgcolor="#99CC00"><strong>SEMESTER</strong></td> <td>:</td> <td> <? if ($semester=="1"){ echo"<input name='semester' type='radio' value='1' checked='checked' />1 <input name='semester' type='radio' value='3' />3 <input name='semester' type='radio' value='5' /> 5"; } else if ($semester=="3"){ echo"<input name='semester' type='radio' value='1' />1 <input name='semester' type='radio' value='3' checked='checked' />3 <input name='semester' type='radio' value='5' />5"; } else if ($semester=="5"){ echo"<input name='semester' type='radio' value='1' />1 <input name='semester' type='radio' value='3' />3 <input name='semester' type='radio' value='5' checked='checked'/>5"; } else{ echo"<input name='semester' type='radio' value='1' />1 <input name='semester' type='radio' value='3' />3 <input name='semester' type='radio' value='5' />5"; } ?> </td> </tr> <tr> <td height="34"><strong>SESI</strong></td> <td>:</td> <td><? if ($sesi=="pagi"){ echo"<input name='sesi' type='radio' value='pagi' checked='checked' />pagi <input name='sesi' type='radio' value='siang' />siang <input name='sesi' type='radio' value='sore' /> sore"; } else if ($sesi=="siang"){ echo"<input name='sesi' type='radio' value='pagi' />pagi <input name='sesi' type='radio' value='siang' checked='checked' />siang <input name='sesi' type='radio' value='sore' />sore"; } else if ($sesi=="sore"){ echo"<input name='sesi' type='radio' value='pagi' />pagi 83 | <input name='sesi' type='radio' value='siang' />siang <input name='sesi' type='radio' value='5' checked='checked'/>5"; } else{ echo"<input name='sesi' type='radio' value='pagi' />pagi <input name='sesi' type='radio' value='siang' />siang <input name='sesi' type='radio' value='sore' />sore"; } ?> </td> </tr> <tr> <td height="34"><strong>USER NAME</strong> </td> <td>:</td> <td> <input name="username" type="text" id="username" size="28" value="<? echo $username;?>"/> </td> </tr> <tr> <td height="24"><strong>PASSWORD</strong></td> <td>:</td> <td> <input name="password" type="password" id="password" size="28" value="<? echo $password;?>" /> </td> </tr> <tr> <td height="34" colspan="3"><div align="center"> <input type="submit" name="Simpan" value="Simpan" /> <input type="hidden" name="STATUS" value="<? echo $stat;?>" /> <input type="hidden" name="id" value="<? echo $id;?>" /> &nbsp;&nbsp;&nbsp; <input type="reset" name="reset" value="cancel" /> </div></td> </tr> </table> <p align="center"><a href="../index.php">home</a></p> </form> <center><table border="1"> <tr> <td>no</td> <td>kode_mhs</td> <td>nama_mhs</td> <td>jurusan</td> <td>semester</td> <td>sesi</td> <td>tanggal_masuk</td> <td>jam</td> <td><center>TOOLSWEB</td> </tr> <?php include "../koneksi.php"; 84 | $perintah="select * from pendaftaran"; $lihat=mysql_query($perintah); $jumlah =mysql_num_rows($lihat); $no=0; while ($data=mysql_fetch_array($lihat)){ $no=$no+1; $id=$data["id"]; $kode_mhs=$data["kode_mhs"]; $nama_mhs=$data["nama_mhs"]; $jurusan=$data["jurusan"]; $semester=$data["semester"]; $sesi=$data["sesi"]; $tanggal_masuk=$data["tanggal_masuk"]; $jam=$data["jam"]; if($no %2==1){ echo "<tr bgcolor='silver'> <td>$no</td> <td>$kode_mhs</td> <td>$nama_mhs</td> <td>$jurusan</td> <td>$semester</td> <td>$sesi</td> <td>$tanggal_masuk</td> <td>$jam</td> <td><a href='index.php?id=$id&stat=Edit'><center><img src='../Images/edit.gif' alt='Edit $nama_mhs'></a> <a href='index.php?id=$id&stat=Delete'><img src='../Images/del.gif' alt='Delete $nama_mhs'></a></td> </tr>"; } if($no %2==0){ echo "<tr bgcolor='gold'> <td>$no</td> <td>$kode_mhs</td> <td>$nama_mhs</td> <td>$jurusan</td> <td>$semester</td> <td>$sesi</td> <td>$tanggal_masuk</td> <td>$jam</td> <td><a href='index.php?id=$id&stat=Edit'><center><img src='../Images/edit.gif' alt='Edit $nama_mhs'></a> <a href='index.php?id=$id&stat=Delete'><img src='../Images/del.gif' alt='Delete $nama_mhs'></a></td> </tr>"; } } echo"</table>"; echo "<hr>"; echo "Jumlah data pendaftaran =$jumlah"; echo "<hr>"; ?> &nbsp;</p> <p>&nbsp;</p> 85 | <? if(isset($_POST["Simpan"]) && ($_POST["STATUS"]=="Simpan")){ include"../koneksi.php"; $kode_mhs=$_POST["kode_mhs"]; $nama_mhs=$_POST["nama_mhs"]; $jurusan=$_POST["jurusan"]; $semester=$_POST["semester"]; $sesi=$_POST["sesi"]; $tanggal_masuk=date("Y/m/d"); //d-M-Y $jam=date("h:m:s"); $username=$_POST["username"]; $password=$_POST["password"]; $perintah="INSERT INTO `db_kampus`.`pendaftaran` ( `id` , `kode_mhs` , `nama_mhs` , `jurusan` , `semester` , `sesi` , `tanggal_masuk` , `jam` ) VALUES ('' , '$kode_mhs', '$nama_mhs', '$jurusan', '$semester', '$sesi', '$tanggal_masuk', '$jam')"; $simpan=mysql_query($perintah); $login="INSERT INTO `db_kampus`.`login` (`id` ,`username` ,`password` ,`status`) VALUES ('', '$username', '$password', 'pendaftaran')"; $simpanlogin=mysql_query($login); if($simpanlogin) {echo "<script>alert('DATA TELAH DI SIMPAN');document.location.href='index.php';</script>";} else{echo"<script>alert('gagal disimpan') document.location.href='index.php';</script>";} }//if isset ?> <? if(isset($_POST["Simpan"]) && ($_POST["STATUS"]=="Edit")){ $id=$_POST["id"]; $kode_mhs=$_POST["kode_mhs"]; $nama_mhs=$_POST["nama_mhs"]; $jurusan=$_POST["jurusan"]; $semester=$_POST["semester"]; $sesi=$_POST["sesi"]; $tanggal_masuk=date("Y/m/d"); $jam=date("h:m:s"); $perintah="UPDATE `db_kampus`.`pendaftaran` SET kode_mhs ='$kode_mhs',nama_mhs ='$nama_mhs', jurusan ='$jurusan',semester = '$semester',sesi = '$sesi',tanggal_masuk = '$tanggal_masuk',jam = '$jam' WHERE id='$id'"; $update=mysql_query($perintah); if($update) {echo "<script>alert('berhasil di update');document.location.href='index.php';</script>";} else{echo"<script>alert('UPDATE FAILED') document.location.href='index.php';</script>";} }//if post edit 86 | ?> <? if($_GET["stat"]=="Delete"){ $id=$_GET ["id"]; $perintah="delete from pendaftaran where id='$id'"; $delete=mysql_query($perintah); if($delete) {echo "<script>alert('DATA TELAH DI HAPUS');document.location.href='index.php';</script>";} else{echo"<script>alert('gagal dihapus') document.location.href='index.php';</script>";} }//if stat ?> </body> </html> Sebelum memanggil file Index.php pada folder Daftar, kita buat file simpan.php, edit.php, update.php, delete.php, tampil.php simpan.php <html> <body bgcolor="#00FF00"> <?php include"../koneksi.php"; $kode_mhs=$_POST["kode_mhs"]; $nama_mhs=$_POST["nama_mhs"]; $jurusan=$_POST["jurusan"]; $semester=$_POST["semester"]; $sesi=$_POST["sesi"]; $tanggal_masuk=date("d-M-Y"); $jam=date("h:m:s"); $perintah="INSERT INTO `db_kampus`.`pendaftaran` ( `id` , `kode_mhs` , `nama_mhs` , `jurusan` , `semester` , `sesi` , `tanggal_masuk` , `jam` ) VALUES ('' , '$kode_mhs', '$nama_mhs', '$jurusan', '$semester', '$sesi', '$tanggal_masuk', '$jam')"; $simpan=mysql_query($perintah); if($simpan) { echo "<script>alert('DATA TELAH DI SIMPAN');document.location.href='index.php';</script>"; } else{ echo"<script>alert('gagal disimpan') document.location.href='index.php'; </script>"; } 87 | ?> edit.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>daftar </title> <style type="text/css"> <!-body { background-color: #66CC00; } --> </style></head> <body> <?php include "../koneksi.php"; $id=$_GET["id"]; $perintah="select * from pendaftaran where id='$id'"; $lihat=mysql_query($perintah); while ($data=mysql_fetch_array($lihat)){ $id=$data["id"]; $kode_mhs=$data["kode_mhs"]; $nama_mhs=$data["nama_mhs"]; $jurusan=$data["jurusan"]; $semester=$data["semester"]; $sesi=$data["sesi"]; $tanggal_masuk=$data["tanggal_masuk"]; $jam=$data["jam"]; } ?> <form id="form1" name="form1" method="post" action="index.php"> <div align="center"><strong>DAFTAR MAHASISWA </strong><br /> </div> <table width="288" border="1" align="center" cellpadding="0" cellspacing="0"> <tr> <td width="64" height="30">kode_mhs</td> <td width="7">:</td> <td width="235"><label> <input name="kode_mhs2" type="text" id="kode_mhs" value="<? echo $kode_mhs;?>" size="15" /> </label></td> </tr> <tr> <td>nama_mhs</td> <td>:</td> <td><label> <input name="nama_mhs2" type="text" id="nama_mhs" value="<? echo $nama_mhs;?>" size="28" /> 88 | </label></td> </tr> <tr> <td height="35">jurusan</td> <td>:</td> <td><select name="select" id="jurusan"> <option value="<? echo $jurusan;?>"><? echo $jurusan;?></option> <option value="Komputer">Komputer</option> <option value="Akuntasni">Akuntasni</option> <option value="Biologi">Biologi</option> </select> </td> </tr> <tr> <td bgcolor="#99CC00">semester</td> <td>:</td> <td> <? if ($semester=="1"){ echo"<input name='semester' type='radio' value='1' checked='checked' />1 <input name='semester' type='radio' value='3' />3 <input name='semester' type='radio' value='5' /> 5"; } else if ($semester=="3"){ echo"<input name='semester' type='radio' value='1' />1 <input name='semester' type='radio' value='3' checked='checked' />3 <input name='semester' type='radio' value='5' />5"; } else if ($semester=="5"){ echo"<input name='semester' type='radio' value='1' />1 <input name='semester' type='radio' value='3' />3 <input name='semester' type='radio' value='5' checked='checked'/>5"; } else{ echo"<input name='semester' type='radio' value='1' />1 <input name='semester' type='radio' value='3' />3 <input name='semester' type='radio' value='5' />5"; } ?> </td> </tr> <tr> <td height="34">sesi</td> <td>:</td> <? if ($semester=="pagi"){ echo"<input name='semester' type='radio' value='pagi' checked='checked' />pagi 89 | <input name='semester' type='radio' value='siang' />siang <input name='semester' type='radio' value='sore' /> sore"; } else if ($semester=="siang"){ echo"<input name='semester' type='radio' value='pagi' />pagi <input name='semester' type='radio' value='siang' checked='checked' />siang <input name='semester' type='radio' value='sore' />sore"; } else if ($semester=="sore"){ echo"<input name='semester' type='radio' value='pagi' />pagi <input name='semester' type='radio' value='siang' />siang <input name='semester' type='radio' value='5' checked='checked'/>5"; } else{ echo"<input name='semester' type='radio' value='pagi' />pagi <input name='semester' type='radio' value='siang' />siang <input name='semester' type='radio' value='sore' />sore"; } ?> </td> </tr> <tr> <td height="34">User name </td> <td>:</td> <td><label> <input name="username" type="text" id="username" size="28" /> </label></td> </tr> <tr> <td height="34">Password</td> <td>:</td> <td><label> <input name="password" type="password" id="password" size="28" /> </label></td> </tr> <tr> <td height="34" colspan="3"><div align="center"> <input name="Edit" type="submit" id="Edit" value="Ubah" /> &nbsp;&nbsp;&nbsp; <input type="reset" name="reset" value="Batal" /> </div></td> </tr> </table> </form> <p>&nbsp; </p><p> </p> <p>&nbsp; </p> <div align="center"> <? 90 | if(isset($_POST["Edit"])){ include "koneksi.php"; $id=$_POST["id"]; $kode_mhs=$_POST["kode_mhs"]; $nama_mhs=$_POST["nama_mhs"]; $jurusan=$_POST["jurusan"]; $semester=$_POST["semester"]; $sesi=$_POST["sesi"]; $tanggal_masuk=date("d-m-Y"); $jam=date("h:m:s"); $perintah="UPDATE `db_kampus`.`pendaftaran` SET kode_mhs ='$kode_mhs',nama_mhs ='$nama_mhs', jurusan ='$jurusan',semester = '$semester',sesi = '$sesi',tanggal_masuk = '$tanggal_masuk',jam = '$jam' WHERE id='$id'"; $simpan=mysql_query($perintah); //echo $perintah; //exit(); if($simpan) { echo "<script>alert('mantep di update'); document.location.href='index.php';</script>"; } else{echo"<script>alert('UPDATE FAILED') document.location.href='index.php'; </script>"; } }//if post edit ?> </div> </body> </html> update.php <?php include"../koneksi.php"; $kode_mhs=$_POST["kode_mhs"]; $nama_mhs=$_POST["nama_mhs"]; $jurusan=$_POST["jurusan"]; $semester=$_POST["semester"]; $sesi=$_POST["sesi"]; $tanggal_masuk=date["d-M-Y"]; $jam=date["h:m:s"]; $perintah="UPDATE `db_kampus`.`daftar` SET `kode_mhs` = '$kode_mhs',`nama_mhs` = '$nama_mhs',`jurusan` = '$jurusan',`semester` = '$semester',`sesi` = '$sesi' ,`tanggal_masuk` = '$tanggal_masuk,`jam` = '$jam'WHERE kode_mhs='$kode_mhs'"; $delete=mysql_query($perintah); if($delete) { echo "<script>alert('DATA BERHASIL DI UPDATE'); document.location.href='index.php';</script>"; 91 | } else{echo"<script>alert('UPDATE GAGAL') document.location.href='index.php'; </script>"; } ?> delete.php <? include "../koneksi.php"; $id=$_GET ["id"]; $perintah="delete from pendaftaran where id='$id'"; $delete=mysql_query($perintah); if($delete) { echo "<script>alert('DATA TELAH DI HAPUS');document.location.href='index.php';</script>"; } else{ echo"<script>alert('gagal dihapus') document.location.href='index.php'; </script>"; } ?> tampil.php <center><table width="77%" border="2" align="center" cellpadding="0" cellspacing="0"> <tr> <td>NO</td> <td>KODE</td> <td>NAMA</td> <td>JURUSAN</td> <td>SEMESTER</td> <td>SESI</td> <td>TANGGAL MASUK </td> <td>JAM</td> </tr> <?php include "../koneksi.php"; $perintah="select * from pendaftaran"; $lihat=mysql_query($perintah); $jumlah =mysql_num_rows($lihat); $no=0; while ($data=mysql_fetch_array($lihat)){ $no=$no+1; $id=$data["id"]; $kode_mhs=$data["kode_mhs"]; $nama_mhs=$data["nama_mhs"]; $jurusan=$data["jurusan"]; $semester=$data["semester"]; $sesi=$data["sesi"]; $tanggal_masuk=date("d-M-Y"); $jam=date("h:m:s"); if($no %2==1){ 92 | echo "<tr bgcolor='gold'> <td>$no</td> <td>$kode_mhs</td> <td>$nama_mhs</td> <td>$jurusan</td> <td>$semester</td> <td>$sesi</td> <td>$tanggal_masuk</td> <td>$jam</td> </tr>"; } if($no %2==0){ echo "<tr bgcolor='purple'> <td>$no</td> <td>$kode_mhs</td> <td>$nama_mhs</td> <td>$jurusan</td> <td>$semester</td> <td>$sesi</td> <td>$tanggal_masuk</td> <td>$jam</td> </tr>"; } } echo "Jumlah data pendaftaran =$jumlah"; ?> </table></center> </body> </html> keluar.php <? session_start();?> <? session_destroy(); echo"<script>alert('logout berhasil..');document.location.href='index.php';</script>\n"; ?> 93 | Tampilan awal index.php pada folder Daftar Tampilan index.php pada folder Daftar saat setelah diisi data 94 |