P. 1
Membuat Blog Anda Sendiri

Membuat Blog Anda Sendiri

|Views: 6|Likes:
Published by Agusra Agsuara

More info:

Published by: Agusra Agsuara on Feb 04, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

02/05/2014

pdf

text

original

Bagaimana Cara Membuat Blog Anda Sendiri!!

Sampai saat ini seharusnya anda sudah mempelajari materi HTML, PHP dan MySQL serta sudah memahami cara menghubungkan katiganya dengan baik. Jika belum, maka saya sarankan anda untuk kembali terlebih dahulu ke pateri kursus-online.com tersebut dan kembali lagi ke sini saat sudah menyelesaikannya. Pada e-book ini ini, kita akan melihat penggunaan PHP dalam membuat sebuah aplikasi web yang berfungsi penuh yaitu sebuah blog. Saya yakin bahwa anda semua sudah mengenal apa itu blog, karena saat ini aplikasi blog ini sangat populer digunakan oleh pengguna internet baik yang masih baru maupun sudah advance. Nah, bila biasanya anda akan menggunakan Wordpress atau blogspot untuk membuat blog anda, maka di e-book ini anda akan belajar bagaimana membuat aplikasi blog anda sendiri dari nol menggunakan PHP. Selamat menikmati.

Menyiapkan Database dan Direktori Langkah pertama yang harus dilakukan adalah menyiapkan databasenya. Kita harus membuat database MySQL siap untuk menerima dan menyimpan data posting blog. Saya tidak akan membahas lagi mengenai berbagai cara membuat sebuah database atau tabel di sini, karena anda bisa menemukannya di materi MySQL ataupun video tutorial cara menghubungkan HTML, PHP & MySQL. Saya hanya akan menunjukkan cara membuat tabelnya dengan perintah command line seperti ini: CREATE TABLE blog (id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, judul VARCHAR(100) NOT NULL, isi TEXT NOT NULL, tanggal DATETIME NOT NULL, user VARCHAR (100)) Untuk cara membuat database, tabel dan user selengkapnya menggunakan PHPMyAdmin, bisa anda pelajari di materi http://kursus-online.com Video Tutorial Menghubungkan HTML, PHP dan MySQL pada bagian 3 (membuat tabel 2). Dalam eook ini saya megasumsikan kita membuat database sebagai berikut: Nama database = blog Nama tabel = blog Nama user = user Password =pass

Langkah-langkah singkat menggunakan PHPMyAdmin adalah sebagai berikut: Pastikan server PHP dan MySQL sudah jalan.

Buat database baru dengan nama blog dan sebuah tabel baru dengan 5 field dengan nama blog juga. Definisikan field-fieldnya seperti gambar di bawah ini.

Langkah berikutnya adalah membuat user dan password. maka akan muncul konfirmasi dibuatnya tabel seperti gambar berikut ini. .Setelah di simpan. Klik Hak Akses.

.Klik Menambahkan pengguna baru. dan password dengan pass. Isi Nama Pengguna dengan user. Check pada semua privilliges Data.

Kemudian pilih tabel blog dari drop down menu ‘Menambahkan hak (privilliges) pada database berikut:’ Check pada semua privilliges Data dan klik Go.Klik Go. .

dan cari baris yang bertuliskan: register_global off Ubahlah menjadi register_global on Setelah itu Klik File Save. Kita akan meletakkan semua file kita di sini. .PENTING!! Setting register_global untuk program blog ini diasumsikan on. Dalam kasus ini saya mengasumsikan bahwa kita menggunakan XAMPP dan terinstall di direktori C:\\Program Files\xampp.ini Buka file tesebut dengan menggunakan Notepad. Jika anda kebetulan memperoleh XAMPP versi baru. Untuk itu mohon lakukan langkah-langkah sederhana berikut Update di file berikut ini: c:\\Program Files\xampp\apache\bin\php. Langkah berikutnya kita perlu membuat direktori khusus untuk file-file kita agar mudah dikelola. Silahkan buka lagi XAMPP control panel Matikan Apache dengan mengklik tombol Stop dan nyalakan lagi dengan mengklik tombol Start di samping tulisan Apache. maka setting default register_global adalah off. Silahkan buka File Explorer dan buat sebuah direktori bernama blogku di root direktori xampp sehingga menjadi seperti ini: C:\\Program Files\xampp\htdocs\blogku.

skrip akan berhenti. Hal ini sangat perlu dilakukan saat kita mengalami masalah dengan koneksi atau saat query kita tidak mengeluarkan data yang kita inginkan. yang semuanya akan mengakses database MySQL yang sama. dan bisa dilihat oleh siapapun yang mengakses blog kita ini. 'pass')) { if (!@mysql_select_db("$database")) { die (). maka skrip ini akan mencoba untuk membuat hubungan ke database yang sudah kita definisikan dalam argumen fungsi (dalam hal ini adalah argumen ‘database’). } } ?> Fungsi ini melakukan beberapa langkah. untuk menampilkan error yang terjadi saat mengakses tabel di database kita.inc. maka skrip ini akan menghentikan seluruh skrip seperti sebelumnya. //Jika pemilihan database gagal. Tugas pertamanya adalah menghubungkan ke server MySQL menggunakan argumen server. Dan jika gagal membuka koneksi. Kita juga harus menggunakan fungsi mysql_error(). maka fungsi ini akan menghentikan eksekusi keseluruhan skrip dengan perintah ‘die”. username dan passsword dengan username dan password anda sendiri. kemudian menggunakan proses loop ‘while’ untuk memproses data tadi menjadi kode HTML agar siap ditampilkan di browser. Jika bingung. . PHP dan MySQL ya …) Jika gagal terhubung. Saatnya untuk membuat halaman yang pertama. 'user'. kita akan membuat file tersebut dengan nama sql_connect. mengambil hasilnya dari server. lihat kembali materi http://kursus-online. maka kita sebaiknya membuat fungsi yang akan kita tulis di sebuah file terpisah. Nah. Membuat Halaman Depan Nah. skrip akan berhenti.com video tutorial cara menghubungkan HTML. username dan password (anda harus mengganti server dengan localhost. sekarang kita sudah memiliki database dan menyiapkan sebuah fungsi untuk terhubung ke database tersebut. //Jika server MySQL tidak bisa dihubungi. } } else { die (). kita akan mempelajari kembali cara untuk mengirimkan query dasar ke server MySQL. Halaman ini berfungsi untuk menampilkan postingan yang ada di field isi dalam tabel kita tadi.Membuat File Koneksi ke Database Karena kita akan membuat beberapa halaman. Jika server MySQL bisa dihubungi. Halaman ini akan menampilkan isi posting tadi ke homepage. Saat kita membuat halaman ini. Dengan isi codenya adalah sebagai berikut: <?php function sql_connect ($database) { //Fungsi membuat koneksi ke MySQL if ($dbc = mysql_connect ('localhost'.

Kita hanya akan mengambil field-field yang diperlukan saja. Tidak lupa juga sebuah link yang akan menuju ke halaman login admin bila di klik. sql_connect(blog). Dan tentu saja. hal ini akan mempercepat proses juga. (lihat lagi video tutorial ‘Cara Menghubungkan HTML. `isi` . Kita akan membuat query kita mengambil seluruh data dari database dan mengurutkannya dari yang paling baru.php>Admin</a></td> </tr> </table> <? Nah sekarang querynya sudah siap. kita akan mengirimkannya ke server MySQL dengan perintah mysql_query(). `tanggal` . $query = "SELECT `judul` . ?> <table align="center" border="0" width="80%"> <tr> <td colspan="2" background=header.jpg> <center><font size=5 face=arial>MYBLOG PROJECT<br><br></center> <font size=3 face=arial><b>Blog buatan saya sendiri<br><br></b> </td> </tr> <tr> <td><a href=login. Sub bagian ‘else’ dalam potongan kode di bawah ini akan menggunakan ‘die’ lagi untuk menghentikan skrip jika querynya gagal. .Karena file sql_connect. <?php require ('sql_connect.inc tadi sangat penting dan bila tidak ditemukan skrip kita tidak akan berdungsi. If ($r = mysql_query ($query)) { //mengirimkan query ke server MySQL Hasilnya (yang saat ini masih dalam bentuk array) kemudian diambil dan dilewatkan dalam sebuah loop ‘while’. mengenai perbedaan include dan require).inc'). agar data yang di kirim dari server MySQL bisa kita perkecil jumlahnya. kita akan tambahkan pemanis berupa gambar header dan judul blog di sini. `user` FROM blog ORDER BY tanggal DESC". Sebelum kita lanjutkan lebih jauh. (kalau lupa lihat pelajaran PHP lagi ya. Hal ini akan membuat skrip kita bisa mengambil data per baris dan mengulangnya lagi sampai baris data habis diambil. Kita akan menggunakan fungsi sql_connect() buatan kita sendiri untuk membuka koneksi ke database: //Menghubungi database MySQL kita. maka kita menggunakan ‘require’ di sini. PHP dan MySQL’ bila lupa ya ) Hasil query ini kita simpan sementara dalam variabel yang bernama ‘$r’.

Kita menggunakan fungsi ‘mysql_fetch_array’ untuk memproses setiap baris dalam variabel pointer array ‘$r’ secara bergantian. Aspek ini kita gunakan di sini agar kode kita nampak bersih dan mudah dibaca. While ($baris = mysql_fetch_array($r)) { //melakukan input data ke dalam tabel //Loop while mengambil semua data dalam array $r Baris berikutnya akan membawa data dari masing-masing elemen baris dan memformatnya jika diperlukan. ?> <table align="center" border="0" width="80%"> <tr> <td> <b><?php echo $judul. anda bisa menggunakan ‘echo’ juga untuk menampilkan setiap baris HTML yang ingin anda tampilkan sebagai alternatif lainnya. fungsi mysql_fetch_array akan melanjutkan ke baris array berikutnya. Fungsi kedua. Meskipun saya menggunakan contoh satu tabel untuk tiap isi posting. Sekarang kita akan membuat kode HTML untuk masing-masing tabel agar dapat ditampilkan di halaman depan situs web kita. kita bisa menutup dan membuka kembali tag-tag PHP di seluruh jode halaman yang kita buat dengan skrip PHP yang tetap kontinyu. strtotime($baris['tanggal'])). Fungsi date memungkinkan kita memformat tanggal dalam bentuk yang mudah dimengerti. Setelah diambil rownya. akan mengubah karakter CR (ganti baris) yang disimpan dalam database MySQL menjadi tag <br> agar dapat tampil sebagaimana seharusnya di browser. ?></b>Di posting oleh: <b><?php echo $user. fungsi ini akan mengembalikan indikator null yang akan digunakan oleh loop while kita untuk berhenti. Kita juga akan menggunakan fungsi ‘date’ dan ‘nl2br’. $tanggal = date ('M j y g:i A'. $isi = nl2br ($isi). kita akan memasukkan data ke dalam variabel tertentu sehingga bisa kita lakukan pemformatan terhadap data tersebut. Saat mencapain baris terakhir. Tentu saja. $isi = $baris[‘isi’]. Dengan menggunakan PHP. Saat ini. ?></b> </td> <td> <div align="right"><?php echo $tanggal. ?></div> </td> </tr> <tr> <td colspan="2"> <?php echo $isi. //Data waktu kita ubah formatnya agar bisa tampil dengan baik $user = $baris['user']. namun tentu saja anda bisa membuatnya dalam sebauh tabel besar bila menginginkannya. ?> </td> </tr> </table><br /> . $judul = $baris['judul'].

<?php } } else { //query tidak bekerja. $isi = nl2br ($isi). kita sudah selesai membuat halaman depan blog kita. mysql_close().php : <?php require ('sql_connect.inc'). } Dengan mempertimbangkan beban server MySQL. Ini akan membebaskan sebagian resourve server dan tidak memberatkan server MySQL. `user` FROM blog ORDER BY tanggal DESC". ?> <table align="center" border="0" width="80%"> <tr> . sql_connect(blog). //Menghubungi database MySQL kita. `isi` . Kita akan lihat lagi kodenya secara keseluruhan ya. //Data waktu kita ubah formatnya agar bisa tampil dengan baik $user = $baris['user']. maka kita lebih baik menutup sesi koneksi ke server MySQL dengan baik daripada membiarkan sesi tersebut tetap terbuka sampai kena time out.php>Admin</a></td> </tr> </table> <? If ($r = mysql_query ($query)) { //mengirimkan query ke server MySQL While ($baris = mysql_fetch_array($r)) { //melakukan input data ke dalam tabel //Loop while mengambil semua data dalam array $r $tanggal = date ('M j y g:i A'. $judul = $baris['judul']. $isi = $baris[‘isi’].jpg> <center><font size=5 face=arial>MYBLOG PROJECT<br><br></center> <font size=3 face=arial><b>Blog buatan saya sendiri<br><br></b> </td> </tr> <tr> <td><a href=login. `tanggal` . silahkan di simpan di dalam direktori C:\\Program Files\xampp\blogku dengan nama index. ?> Nah. die (). Tentu saja kita bisa memolesnya lagi nanti agar nampak lebih profesional dan sesuai keinginan kita masing-masing. $query = "SELECT `judul` . strtotime($baris['tanggal'])). ?> <table align="center" border="0" width="80%"> <tr> <td colspan="2" background=header.

Pertama kita akan membuat sebuah form login sederhana yang memiliki 3 elemen webb yaitu: User Id . ?></b> </td> <td> <div align="right"><?php echo $tanggal. Berikutnya kita akan membuat halaman admin yang berfungsi untuk menambah.<td> <b><?php echo $judul. ?> Sekedar review. die (). Kita menggunakan 2 perintah PHP khusus yaitu ‘mysql_connect’ dan mysql_select_db’ untuk membuka koneksi ini. } mysql_close(). kita sudah belajar beberapa hal menarik di sini antara lain: Bagaimana membuat dan menggunakan fungsi buatan kita sendiri. ?> </td> </tr> </table><br /> <?php } } else { //query tidak bekerja.php (yaitu form login) dan file ceklogin. Fungsi ini dibuat untuk membuka koneksi ke server MySQL dan database yang kita inginkan. Kita juga sudah mempelajari cara memanipulasi string agar data dari database dapat tampil lebih baik di browser dan menggunakan loop while untuk menampilkan seluruh hasil query baris per baris. Bagaimana cara meletakkan fungsi kita tersebut dalam file terpisah untuk memungkinkan penggunaan kembali fungsi tersebut di halaman-halaman lainnya nanti (perhatikan lagi bahwa kita menggunakan include/require untuk melakukan ini). Siap … Membuat Halaman Admin Kita akan membuat halaman login terlebih dahulu untuk mencegah orang lain masuk ke halaman admin kita. mengedit dan menghapus isi blog kita. Proses login akan melibatkan 2 file yaitu file login.php (yang bertugas untuk proses verifikasi dan pendaftaran session). ?></b>Di posting oleh: <b><?php echo $user. ?></div> </td> </tr> <tr> <td colspan="2"> <?php echo $isi.

php.</td> <td>&nbsp. Silahkan klik <a href=admin. Adapun listing programnya adalah sebagai berikut: <? $username=user. }else{ echo ("login gagal"). Di sini kita akan mengecek apakah user dan password yang dimasukkan sudah benar. maka variabel session dengan nama myusername akan di register. Dalam file ini kita mulai berkenalan dengan variabel session.Password Tombol Login Skripnya silahkan disimpan dengan nama login. Selama kita belum menutup browser atau terkena perintah session_destroy. echo ("Login berhasil.php>di sini</a> untuk menuju halaman admin"). dan kodenya adalah sebagai berikut: <table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"> <tr> <form name="form1" method="post" action="ceklogin. Dan apabila benar.php"> <td> <table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF"> <tr> <td colspan="3"><strong>Member Login </strong></td> </tr> <tr> <td width="78">Username</td> <td width="6">:</td> <td width="294"><input name="myusername" type="text" id="myusername"></td> </tr> <tr> <td>Password</td> <td>:</td> <td><input name="mypassword" type="text" id="mypassword"></td> </tr> <tr> <td>&nbsp.//Ini adalah nama user yang boleh masuk ke halaman admin $password=pass.//dan ini passwordnya if ($myusername == $username and $mypassword == $password){ session_start().php. } ?> . maka variabel ini akan terus berada di memory server.</td> <td><input type="submit" name="Submit" value="Login"></td> </tr> </table> </td> </form> </tr> </table> File berikutnya yang perlu kita siapkan adalah file ceklogin. Variabel inilah yang akan mengidentifikasikan bahwa kita sudah pernah login sebelumnya. session_register(myusername).

Kita beri nama file ini cek. maka kita perlu memiliki cara untuk mengenali masing-masing isi posting.inc untuk memastikan bahwa pengakses file sudah login sebelumnya. maka pengunjung sudah pernah berhasil login sebelumnya. Nah. //Menghubungi database MySQL kita sql_connect('blog'). akan dilanjutkan dengan proses loop while If ($r = mysql_query ($query)) { //Membuat tampilan tabel ?> . kita tidak mengambil field ini). } ?> Pembuatan halaman admin ini akan kita mulai dengan menggunakan kembali sebagian kode yang kita gunakan untuk membuat halaman depan. Jika variabel session ini ada. maka kita sudah bisa menggunakan variabel session yang pernah kita register sebelumnya yaitu $myusername. Perhatikan juga bahwa kita mulai menggunakan lagi file sql_connect.inc'). karena kita mengambil seluruh field yang ada.Nah. kita akan memanfaatkan fiels auto incrementing dalam database kita tadi untuk mewujudkannya. Kode ini kita harapkan akan mengambil data sama seperti di halaman depan dan memformatnya dalam bentuk tabel agar mudah dilihat. Kita akan mengambil field ID juga dalam query kita (ingat. Variabel session ini akan kita gunakan untuk mengecek apakah pengunjung sudah login atau belum. <? require ('sql_connect. Di sini kita akan memberikan nilai false pada variabel session $myusername untuk menghindari penyalahgunaan otorisasi dengan memberikan nilai pada variabel tersebut dari luar program. //Ini adalah query untuk keperluan admin. if(!$myusername){ echo ("Anda harus login dahulu"). Nah. die(). Setelah perintah session_start ini. //Baris kode ini untuk mengeksekusi query //Jika kita memperoleh hasil positif. maka kita akan menggunakan asterisk (*) untuk mempermudah penulisan querynya.inc dan menggunakan file cek. include (‘cek. //Kita mengambil semua artikel yang ada beserta seluruh kolomnya. kita memulai session dengan session_start. kita perlu membuat satu lagi file kecil yang akan kita panggil dengan include pada setiap file yang memerlukan pengamanan untuk mengecek apakah sudah login dengan benar atau belum. saat menampilkan halaman depan. session_start(). $query = 'SELECT * FROM blog ORDER BY tanggal DESC'. Karena kita akan bekerja dengan data dari database.inc. <? $myusername=false.inc’). Setelah itu.

?></td> </tr> Sekarang. Tabel kita tutup pada akhir loop. isi blog mana yang akan dimanipulasi. Perbedaannya hanya pada penambahan field ‘id’. Variabel ini diperlukan bagi form selanjutnya untuk mengidentifikasikan secara tepat. Kita akan tambahkan baris baru yang memiliki 2 buah form: satu adalah form untuk halaman edit (edit. kita perlu menambahkan pilihan untuk melakukan manipulasi atas data ini.php) dan satu lagi untuk halaman yang bertugas menghapus isi blog (hapus. ?></b> </td> <td> <div align="right"><?php echo $tanggal. strtotime($baris['tanggal'])). $isi = nl2br ($isi). Selanjutnya data tersebut akan kita format agar tampil dalam format yang bisa dibaca manusia. Perhatikan bagaimana variabel $id yang berisi id masing-masing isi blog kita kirimkan sebagai variabel tersembunyi (hidden variable). Perhatikan bahwa manipulasi string yang kita lakukan sama dengan yang kita lakukan di halaman depan. $isi = $baris[‘isi’].php). ?> <tr> <td colspan="2"> <table align="center" border="0" width="100%"> <tr> <td> <b><?php echo $judul ?></b> . . $user = $baris['user']. kita sudah memiliki semua informasi dari isi blog yang ditampilkan. While ($baris = mysql_fetch_array($r)) { //memasukkan data ke dalam bentuk tabel $judul = $baris['judul']. ?></div> </td> </tr> </table> </td> </tr> <tr> <td colspan="2"><?php echo $isi.Diposting oleh: <b><?php echo $user. Field ini digunakan untuk mengidentifikasikan masing-masing isi blog yang kita ambil dari database.<table align="center" border="1" width="80%"> <tr> <td colspan="2"> <b><center>Pengelolaan Berita</b></center></b> </td> </tr> <?php Di sini koneksi MySQL sudah jalan dan data sudah diperoleh. //Data tanggal disesuaikan agar tampil dengan baik $tanggal = date ('M j y g:i A'.

Halaman form ini kemudian akan mengirimkan keempat data tersebut ke sebuah halaman pemroses yang akan kita buat sebentara lagi.php" method="POST"> <table align="center"> <tr> <td>Judul Posting: </td> <td><input type="text" name="judul" size="40" maxsize="100" /></td> </tr> <tr> <td>User : </td> <td><input type="text" name="user" size="40" maxsize="100" /></td> </tr> <tr> <td>Isi Posting: </td> <td><textarea name="entry" cols="100" rows="10"></textarea></td> </tr> <tr> <td><input type="submit" name="Kirim" value="Kirim" /></td> . "</b></p>\n").<tr> <td> <table align="center" width="200" border="0"> <tr> <td> <form action="edit. kita memerlukan sebuah form untuk menambahkan entry baru pada tabel blog. } mysql_close(). Ini adalah form posting kita. //Menutup sesi MySQL Sekarang semua isi blog sudah bisa ditampilkan. mysql_error() .php" method="post"> <input type="hidden" name="id" value="<?=$id ?>"> <input type="submit" name="submit" value="Hapus"> </form> </td> </tr> </table> </td> </tr> <?php } ?> </table> <?php } else { //kalau query tidak berhasil. kita akan mengumpulkan 4 buah informasi dinamis. ?> <form action="tambah.php" method="post"> <input type="hidden" name="id" value="<?=$id ?>"> <input type="submit" name="submit" value="Edit"> </form> </td> <td> <form action="hapus. die ("<p>Query tidak berhasil karena: <b>" . Dalam form ini.

inc’). di bagian bawah.Diposting oleh: <b><?php echo $user. //Baris kode ini untuk mengeksekusi query //Jika kita memperoleh hasil positif. halaman depan admin kita sudah lengkap. strtotime($baris['tanggal'])). $query = 'SELECT * FROM blog ORDER BY tanggal DESC'.php: <? require ('sql_connect. Mari kita lihat keseluruhan kodenya dan simpan dengan nama admin. $isi = nl2br ($isi).</tr> </table> </form> Akhirnya. //Menghubungi database MySQL kita sql_connect('blog'). //Data tanggal disesuaikan agar tampil dengan baik $tanggal = date ('M j y g:i A'. DI halaman ini kita bisa melihat seluruh isi posting yang sudah dilakukan dan tersedia juga link untuk melakukan editing atau penghapusan. kita juga bisa melakukan posting baru pada blog kita ini. akan dilanjutkan dengan proses loop while If ($r = mysql_query ($query)) { //Membuat tampilan tabel ?> <table align="center" border="1" width="80%"> <tr> <td colspan="2"> <b><center>Pengelolaan Berita</b></center></b> </td> </tr> <?php While ($baris = mysql_fetch_array($r)) { //memasukkan data ke dalam bentuk tabel $judul = $baris['judul']. include (‘cek. //Ini adalah query untuk keperluan admin. $user = $baris['user']. Sebagai tambahan. $isi = $baris[‘isi’].inc'). ?> <tr> <td colspan="2"> <table align="center" border="0" width="100%"> <tr> <td> <b><?php echo $judul ?></b> . ?></b> </td> <td> . //Kita mengambil semua artikel yang ada beserta seluruh kolomnya.

//Menutup sesi MySQL ?> <form action="tambah. ?></div> </td> </tr> </table> </td> </tr> <tr> <td colspan="2"><?php echo $isi. die ("<p>Query tidak berhasil karena: <b>" .php" method="post"> <input type="hidden" name="id" value="<?=$id ?>"> <input type="submit" name="submit" value="Hapus"> </form> </td> </tr> </table> </td> </tr> <?php } ?> </table> <?php } else { //kalau query tidak berhasil.php" method="POST"> <table align="center"> <tr> <td>Judul Posting: </td> <td><input type="text" name="judul" size="40" maxsize="100" /></td> </tr> <tr> <td>User : </td> <td><input type="text" name="user" size="40" maxsize="100" /></td> </tr> <tr> <td>Isi Posting: </td> <td><textarea name="isi" cols="100" rows="10"></textarea></td> </tr> <tr> . mysql_error() . ?></td> </tr> <tr> <td> <table align="center" width="200" border="0"> <tr> <td> <form action="edit. } mysql_close(). "</b></p>\n").<div align="right"><?php echo $tanggal.php" method="post"> <input type="hidden" name="id" value="<?=$id ?>"> <input type="submit" name="submit" value="Edit"> </form> </td> <td> <form action="hapus.

Karakter-karakter seperti tanda kutip tunggal dan ganda dapat menyebabkan query tidak berjalan. maka pesan error akan ditampilkan. Proses berikutnya adalah menangkap data yang dikirimkan dari form halaman depan admin kita. namun jika tidak ada. //Membersihkan teks menggunakan trim trim ($judul). Pertama data harus kita peroleh dengan menggunakan POST. Ini adalah proses 2 tahap. $isi = $_POST['isi']. Kita harus menambahkan escape characters. Jika ada. semua data sudah selesai di proses dan siap untuk dimasukkan ke dalam tabel database MySQL. Ini perlu dilakukan agar data tetap berukuran sekecil mungkin dan nampak indah saat ditampilkan. maka kita akan menggunakan INSERT agar MySQL menyisipkan baris baru. proses akan dilanjutkan. Perintah trim akan menghapus semua spasi yang tidak diperlukan pada akhir atau awal string. //menambahkan escape characters pada query $judul = addslashes ($judul). trim ($user). $isi = addslashes ($isi). Tahap berikutnya meliputi pembersihan data dan melakukan format agar kompatibel bagi database MySQL. Fungsi adslashes adalah fungsi PHP yang akan menambahkan escape character (‘/’) ke semua karakter yang bermasalah seperti tanda kutip. <? if (isset($_POST['submit'])) { require ('sql_connect. trim ($isi). Perhatikan bahwa . Sampai di sini. //menghubungkan ke database MySQL sql_conenct('blog'). Karena kita akan menambahkan data baru. $user = addslashes ($user). $judul = $_POST['judul']. $user = $_POST['user'].inc'). $tanggal = date('Y-m-d H:i'). Kita juga akan menambahkan proses penangkapan error untuk mengecek data yang dikirimkan.<td><input type="submit" name="submit" value="Kirim" /></td> </tr> </table> </form> Halaman berikut yang harus kita buat adalah halaman pemroses pertama yaitu halaman tambah posting.

//mengeksekusi query if (@mysql_query ($query)) { ?> <center>Posting sudah berhasil disimpan. <a href="admin. edit.php">Kembali ke halaman admin </a></center> <?php } mysql_close(). //menambahkan escape characters pada query $judul = addslashes ($judul). trim ($isi). <a href="admin. //Menutup sesi MySQL } else { <center>Tidak ada data yang bisa di proses.php untuk menghapus posting. $user = $_POST['user']. . '$user')". //Membersihkan teks menggunakan trim trim ($judul). isi.php">Kembali ke halaman admin </a></center> <?php } else { ?> <center>Posting gagal. maka id tersebut akan tetap unik. tanggal. $judul = $_POST['judul']. '$isi'. ‘$tanggal’.field id akan secara otomatis bertambah meskipun kita set di query ini dengan angka 0. Dengan cara ini.inc'). //menghubungkan ke database MySQL sql_conenct('blog'). kita sudah berhasil menyelesaikan halaman utama admin yang akan terhubung dengan 3 halaman pemroses selanjutnya yaitu tambah. <a href="admin. trim ($user).php untuk menambah posting baru. judul.php.php untuk melakukan editing terhadap posting dan hapus.inc’). user) VALUES (0. $isi = $_POST['isi']. kita akan tampilkan status hasil posting oleh user tersebut agar tahu bahwa entry posting sudah berhasil. yang keseluruhan kodenya adalah sebagai berikut: <? if (isset($_POST['submit'])) { require ('sql_connect. Sisa kode di halaman ini akan mengirimkan query ke database MySQL. include (‘cek. Kemudian kita juga sudah membuat halaman tambah. Sebagai tambahan. '$judul'.php">Kembali ke halaman admin </a></center> } Sampai di sini. //mendefinisikan query $query = "INSERT INTO blog (id.

inc’). <a href="admin. Setelah koneksi terbuka.php">Kembali ke halaman admin </a></center> <?php } mysql_close().inc'). maka kita perlu melakukan sedikit langkah agar teks yang tersimpan tadi tidak mengacaukan tag-tag HTML. //menangkap data POST $id = $_POST['id']. '$judul'. judul. Kita perlu menangkap field hidden bernama ‘id’. <a href="admin. $user = addslashes ($user). user) VALUES (0. $tanggal = date('Y-m-d H:i'). Seperti biasa. '$user')". ‘$tanggal’. //mengeksekusi query if (@mysql_query ($query)) { ?> <center>Posting sudah berhasil disimpan. Siap…. Di sini kita akan memerlukan 2 buah file.$isi = addslashes ($isi). //mendefinisikan query $query = "INSERT INTO blog (id. dan file kedua akan memproses upadate dari form pertama tadi ke database MySQL. Halaman form yang pertama tadi akan mengambil data dari database MySQL dan menampilkannya dalam bentuk form. <a href="admin. yaitu data yang sesuai dengan ‘id’.php">Kembali ke halaman admin </a></center> } ?> Tugas berikutnya adalah membuat file untuk proses edit dan hapus. '$isi'. tanggal. . isi. //Menutup sesi MySQL } else { <center>Tidak ada data yang bisa di proses. //menghubungi database MySQL sql_connect('blog'). Kita juga akan menggunakan klausul WHERE dalam query kita agar data yang diambil hanya data yang relevan saja. kita mulai dengan membuka koneksi: <?php require ('sql_connect. kita perlu menangkap data POST yang dikirimkan oleh halaman utama admin. Nah. karena form ini menggunakan HTML standar. yang pertama adalah form yang akan kita gunakan untuk mengedit data. Yang pertama kita akan membuat file-file pemroses edit isi blog. include (‘cek.php">Kembali ke halaman admin </a></center> <?php } else { ?> <center>Posting gagal.

?>" /> </td> </tr> <?php //} ?> <tr> <td colspan=2> Isi Posting: </td> </tr> <tr> <td> . perhatikan bahwa kita tidak perlu menggunakan while karena hanya ada 1 baris saja. maka kita harus menghapus tag HTML dan menggantikannya dengan escape character yang sesuai. ?>. //meletakkan informasi dari query ke dalam variabel agar siap tampil. kita akan melanjutkan dengan proses untuk tampilan.php. $judul = htmlentities($baris['judul']). ‘Judul’ dan ‘’isi’ akan kita tampilkan dalam sebuah field teks di form kita ini. Karena data dari form ini masih akan dikirimkan lagi ke halaman lain yang bertugas untuk melakukan update ke database MySQL.php" method="POST"> <table> <tr> <td> Judul Posting: <input type="text" name="judul" size="40" maxsize="100" value="<?php echo $judul. $isi = htmlentities($baris['isi']). ?> Sekarang kita akan menampilkan isi variabel ini ke dalam field dalam form dengan perintah echo seperti ini <?php echo $judul. ?>" /> </td> <td> User: <input type="text" name="user" size="20" maxsize="50" value="<?php echo $user. $id = $baris['id']. <center> Halaman berikutnya yang akan memproses data dari sini akan kita namakan editsave. Dengan cara ini. <form action="editsave. maka apapun tag HTML yang ikut tersimpan tidak akan mengacaukan tampilan proses editing ini. Setelah pengambilan data selesai. $user = htmlentities($baris['user’]). dan kita akan menggunakan field id yang hidden lagi. Karena field ini kemungkinan sudah berisi data. Kita akan menggunakan fungsi ‘htmlentities’ untuk melakukannya. //mengambil informasi. //menjalankan query if ($r = mysql_query($query)) { $baris = mysql_fetch_array ($r). jadi kita masukkan di sini.//mendefinisikan query $query = "SELECT * FROM blog WHERE id=’$id’". maka data ini tetap harus di track.

. //Menutup sesi MySQL Nah. //menangkap data POST $id=$_POST['id']. ?></textarea> </td> </tr> <tr> <td> //Jika user memutuskan untuk menyimpan perubahan.php" method="post"> <input type="hidden" name="id" value="<?php echo $id . ?>" /> <input type="submit" name="submit" value="Simpan" /> </form> </td> <td> //Jika user ingin membatalkan perubahan.inc'). } mysql_close(). //menghubungi database MySQL sql_connect('blog'). kita akan arahkan kembali ke halaman utama admin: <form action="admin. //mengambil informasi. perhatikan bahwa kita tidak perlu menggunakan while karena hanya ada 1 baris saja. //meletakkan informasi dari query ke dalam variabel agar siap tampil. } else { echo "<p>Tidak bisa mengambil data posting. maka halaman ini akan menuju ke halaman editsave. listing program keseluruhan untuk file edit.php: <form action="editsave. </p>". dan kemudian menutup koneksi MySQL. //mendefinisikan query $query = "SELECT * FROM blog WHERE id='$id'". include ('cek.<textarea name="isi" cols="100" rows="15"><?php echo $isi.php ini adalah sebagai berikut: <?php require ('sql_connect.inc').php" method="post"> <input type="submit" name="submit" value="Cancel" /> </form> </td> </tr> </table> </center> <?php Kita akan mengakhiri halaman ini dengan menangkap error jika ada. //menjalankan query if ($r = mysql_query($query)) { $baris = mysql_fetch_array ($r).

?>" /> </td> </tr> <tr> <td> User: <input type="text" name="user" size="20" maxsize="50" value="<?php echo $user.php" method="post"> <input type="hidden" name="id" value="<?php echo $id . ?></textarea> </td> </tr> <tr> <td> <form action="editsave. ?>" /> </td> </tr> <?php //} ?> <tr> <td colspan=2> Isi Posting: </td> </tr> <tr> <td> <textarea name="isi" cols="100" rows="15"><?php echo $isi.php" method="POST"> <table> <tr> <td> Judul Posting: <input type="text" name="judul" size="40" maxsize="100" value="<?php echo $judul. $id = $baris['id']. $user = htmlentities($baris['user']). ?>" /> <input type="submit" name="submit" value="Simpan" /> </form> </td> <td> <form action="admin.$judul = htmlentities($baris['judul']). ?> <center> <form action="editsave.php" method="post"> <input type="submit" name="submit" value="Cancel" /> </form> </td> </tr> . $isi = htmlentities($baris['isi']).

$user = $_POST['user'].</table> </center> <?php } else { echo "<p>Tidak bisa mengambil data posting. Seperti biasa. Kita bisa memverifikasi hasilnya menggunakan if-else. </p>". isi='$isi'. Query berikut ini akan menggunakan field hidden ‘id’ untuk dapat memproses dan mengambil hanya data yang kita inginkan saja. trim ($isi). $id = $_POST['id']. kita mulai dengan membuka hubungan ke server MySQL. user='$user' WHERE id={$id}". } mysql_close().php yang ekan memproses data dari form edit.php ke MySQL. Halaman berikut yang akan kita buat adalah halaman editsave. kita akan menggunakan trim dan addslashes. require ('sql_connect. Seperti sebelumnya. //Menutup sesi MySQL ?> Kita masih harus membuat 2 halaman lagi. //menjalankan query $r = mysql_query ($query). $isi = addslashes ($isi). Kita akan menggunakan perintah MySQL UPDATE dlaam querynya. //membersihkan data sebelum diinput trim ($judul). //menangkap data POST $judul = $_POST['judul']. namun jangan khawatir karena 2 halaman ini kecil-kecil aja ko. //menghubungi database MySQL sql_connect('blog'). //mendefinisikan query $query = "UPDATE blog SET judul='$judul'. $isi = $_POST['isi']. //menambahkan escape character $judul = addslashes ($judul). ?> Kemudian kita akan menangkap data dari form sebelumnya dan menyiapkannya untuk di masukkan ke dalam database.inc'). ?> <table> <?php . trim ($user). Cara mengambilnya adalah menggunakan fungsi ‘mysql_affected_rows’ untuk memastikan bahwa sebuah baris sudah berhasil diupdate. $user = addslashes ($user).

//membersihkan data sebelum diinput trim ($judul). //menghubungi database MySQL sql_connect('blog'). kita sudah menyelesaikan file editsave. trim ($isi).php" method="post"> <input type="submit" name="submit" value="Ok" /> </form> </td> </tr> </table> <?php mysql_close().inc’). //menangkap data POST $judul = $_POST['judul']. trim ($user). //Menutup sesi MySQL ?> Sampai di sini. //menambahkan escape character $judul = addslashes ($judul).if (mysql_affected_rows() == 1) { //Jika update berhasil ?> <table> <tr> <td> Update Berhasil </td> </tr> <?php } else { //jika gagal ?> <tr> <td> Update Gagal </td> </tr> <?php } ?> <tr> <td> <form action="admin. $id = $_POST['id'].inc'). $isi = $_POST['isi']. include (‘cek.php kita. yang keseluruhan kodenya adalah sebagai berikut: <? require ('sql_connect. $user = $_POST['user']. .

php. isi='$isi'.php" method="post"> <input type="submit" name="submit" value="Ok" /> </form> </td> </tr> </table> <?php mysql_close(). . dengan perbedaan bahwa perintah MySQL yang digunakan adalah DELETE. kita sama sekali tidak perlu menyiapkan datanya terlebih dahulu seperti yang kita lakukan pada editsave. //mendefinisikan query $query = "UPDATE blog SET judul='$judul'.$isi = addslashes ($isi). kita sampai juga di pembuatan halaman terakhir dari proyek pembuatan blog sederhana ini yaitu halaman hapus. ?> <table> <?php if (mysql_affected_rows() == 1) { //Jika update berhasil ?> <table> <tr> <td> Update Berhasil </td> </tr> <?php } else { //jika gagal ?> <tr> <td> Update Gagal </td> </tr> <?php } ?> <tr> <td> <form action="admin. user='$user' WHERE id={$id}". //menjalankan query $r = mysql_query ($query).php. Karena itu.php. Halaman ini sebenarnya sangat mirip dengan halaman editsave. $user = addslashes ($user). //Menutup sesi MySQL ?> Akhirnya.

php" method="post"> <input type="submit" name="submit" value="Ok" /> </form> </td> </tr> </table> <?php mysql_close(). Tentu saja seperti yang sudah saya sampaikan.inc’). ini adalah bentuk yang sangat disederhanakan dari sebuah aplikasi blog. //menghubungi database MySQL sql_connect('blog'). //Menutup sesi MySQL ?> Nah. $id=$_POST['id']. <? require ('sql_connect. semua halaman yang diperlukan untuk membuat blog kita sudah jadi. //Mengirimkan query untuk menghapus isi posting mysql_query ($query).Sekali lagi kita akan menggunakan fungsi ‘mysql_affected_rows’ untuk memastikan proses penghapusan sudah berjalan dengan baik. include (‘cek. Masih sangat banyak yang bisa . if (mysql_affected_rows() == 1) { //jika penghapusan berhasil ?> <table> <tr> <td> Penghapusan data berhasil </td> </tr> <?php } else { //Jika gagal ?> <tr> <td> Penghapusan data gagal </td> </tr> <?php } ?> <tr> <td> <form action="admin. //Mendefinisikan query $query = "DELETE FROM blog WHERE id='$id' LIMIT 1".inc').

.disempurnakan. namun untuk menjaga kesederhanaan penjelasan. maka sampai di sini dulu proses pembuatan aplikasi blog kita. Sekarang anda sudah siap untuk mengembangkan aplikasi anda sendiri.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->