Senin, 27 April 2009

PHP_Simple


Penggunaan seleksi untuk menampilkan database menggunakan OOP telah penulis jelaskan sebelumnya. OOP dalam php 5 ini telah terbukti ampuh dalam menghasilkan source code yang efisien untuk menangani manajemen database. Tentu hambar rasanya jika penggemar sayur asam memakannya tanpa ada sedikitpun rasa garam di dalamnya. Nah begitu juga dengan artikel penulis sebelumnya, menampilkan database dengan OOP masih belum cukup tanpa pengetahuan selanjutnya mengenai bagaimana melakukan update dan delete record pada database menggunakan OOP ini. Oleh karena itu di sinilah penulis akan jelaskan sedikit penggunaan OOP untuk menghandle database. Untuk mempelajarinya mari buat databasenya terlebih dahulu :

-- simple cms database
create database simplecms ;
use simplecms  ;
create table article( id int(4) primary key auto_increment, category varchar(225), article_title varchar(225) );
insert into article values('','web design', 'Web Design Make Over with CSS');
insert into article values('','graphic design','CorelDraw the handy tool');
insert into article values('','flash animation','Make a splash water animation');

Ya, langsung saja penulis berikan contoh kasusnya, script intinya, index.php, dan biasanya script seperti ini digunakan sebagai halaman admin. Tentunya admin disini dapat melakukan update dan delete record database.

<?php
$mysqli = new mysqli("localhost", "root", "", "simplecms");
if (mysqli_connect_errno())
{
    echo("Nggak bisa konek : ".mysqli_connect_error());
    exit();
}
$cat = $mysqli->prepare("select id, category, article_title from article order by id");
$cat->execute();
$cat->bind_result($id, $category, $article_title);
?>

<html>
<head>
<title>Database in OOP Way ; Seleksi Data dengan mySqli</title>
</head>
<body><table border='0' width='40%'>

<caption><h3>SIMPLECMS CONTROL PANEL :</h3></caption>
<tr><th>No</th><th>Category</th><th>Title</th></tr>
<?php
while ($cat->fetch())
    echo "<tr><td>".$id."</td><td>".$category."</td>"."<td>".$article_title."</td><td><a href=?yang_ini_diedit=ya&id_nya="
    .$id.">EDIT</a></td><td><a href=?yang_ini_didelete=ya&id_nya=".$id.">DELETE</a></td></tr>"; 
?>
</table>
<hr width='39%' align='left'/>
<?php
if ($_REQUEST['yang_ini_didelete'] == 'ya')
{
    echo "Wah... record ".$_REQUEST['id_nya']." bener-bener mau di hapus ya ?" ;
    echo "<form action='?delete_langsung_lah=ya' method='POST'>
            <table><input type='hidden' name='id' value=".$_REQUEST['id_nya'].">
            <tr><td><input type='submit' value='ya' name='submit'></td></tr></table>
            </form>";
}

else if ($_REQUEST['delete_langsung_lah'] == 'ya')
{
    $id_delete = $_POST['id'];
    $cat = $mysqli->prepare("delete from article where id=?");
    $cat->bind_param('i',$id);
    $id = $id_delete;
    $cat->execute();
    echo "Database berhasil dihapus ... Anda akan diredirect dalam 2 detik";
    echo "<meta http-equiv='refresh' content='2;url=index.php'>";
}

else if ($_REQUEST['yang_ini_diedit'] == 'ya')
{       
    $cat = $mysqli->prepare("select id, category, article_title from article where id=?");
    $cat->bind_param('i',$id);
    $id = $_REQUEST['id_nya'];
    $cat->execute();
    $cat->bind_result($id, $category, $article_title);
    echo "<caption>Yang mau diedit...</caption>";
    echo "<table><form action='?update_langsung_lah=ya' method='POST'>";
    while ($cat->fetch()) {
    echo "<tr><td>Category : </td><td><select name='category'><option value=".str_replace(" ","_",$category).">".$category."</option></select></td></tr>";
    echo "<tr><td>Title : </td><td><textarea name='title' cols='51' rows='7'>";
    echo $article_title ; }
    echo "</textarea></td></tr>";
    echo "<input type='hidden' name='id' value=".$_REQUEST['id_nya'].">";
    echo "<tr><td></td><td><input type='submit' name='submit' value='update'></td></tr>";
    echo "</form></table>";
}

else if ($_REQUEST['update_langsung_lah'] == 'ya')
{
    $category = str_replace("_"," ",$_POST['category']);
    $title = $_POST['title'];
    $id =  $_POST['id'];
   
    $cat = $mysqli->prepare("update article SET category ='$category', article_title = '$title' where id=?");
    $cat->bind_param('i',$id);
    $cat->execute();
   
    echo "Database berhasil diupdate ... Anda akan diredirect dalam 2 detik";
    echo "<meta http-equiv='refresh' content='2;url=index.php'>";
   
}
?>

</body>
</html>

Tampilannya nanti akan seperti ini :


Potongan source code di bawah ini digunakan untuk menampilkan database dengan cara OOP. Seperti yang pernah penulis jelaskan dalam artikel pertama mengenai penggunaan OOP dalam PHP 5 untuk memanage database.

$mysqli = new mysqli("localhost", "root", "", "simplecms");
if (mysqli_connect_errno())
{   
    echo("Nggak bisa konek : ".mysqli_connect_error());
    exit();
}
$cat = $mysqli->prepare("select id, category, article_title from article order by id");
$cat->execute();
$cat->bind_result($id, $category, $article_title);

Penjelasan detilnya dapat dilihat di artikel sebelumnya. Di sini penulis akan menjelaskan beberapa fungsi baru OOP dalam PHP 5. Lihat kembali fungsi tersebut pada baris ini :
 
...
$cat = $mysqli->prepare("delete from article where id=?");
$cat->bind_param('i',$id);
$id = $id_delete;
$cat->execute();
echo "Database berhasil dihapus ... Anda akan diredirect dalam 2 detik";
echo "<meta http-equiv='refresh' content='2;url=index.php'>";
...

Di dalam barisan tersebut terdapat kalimat pembentuk query sql yang sedikit berbeda, yaitu :
$cat = $mysqli->prepare("delete from article where id=?");

Terdapat tanda '?' sebagai perwakilan dari parameter syarat. Tanda tanya ini nantinya akan didefinisikan sebagai satu syarat dalam satu variable menggunakan fungsi bind_param(), sehingga jika sebuah query didefinisikannya  seperti ini :
cat = $mysqli->prepare("delete from article where id=?");

maka, harus terdapat fungsi bind_param() sesudahnya, seperti :
$cat->bind_param('i',$id);

Sehingga 2 baris kalimat tersebut sama halnya dengan query biasa, jika dalam query biasa maka hasilnya seperti ini :

$cat = "delete from article where id='$id'";
   
Setali 3 uang. :D. Ya ya ya ... tapi coba perhatikan kembali fungsi bind_param pada kalimat tersebut :
$cat->bind_param('i',$id);

Dalam parameter pertama fungsi bind_param di isi dengan 'i'.
Kenapa dengan 'i' ?, i ini adalah perwakilan dari variable yang bertipe integer. Dalam query seperti ini delete from article where id='$id', mustahil jika mengisinya dengan string, kenapa ? lihat struktur tablenya. :D, hasilnya nanti akan 0 jika menggunakan string. Adapun type dari parameter tersebut antara lain yaitu :

i : ini untuk variable yang bertipe integer
s : ini untuk variable yang bertipe string
d : ini untuk variable yang bertipe double
b : ini untuk variable yang bertipe blob.

Ya kita lompat ke baris berikutnya :
$id = $id_delete;
Statement ini hanyalah sebuah assignment, memenuhi syarat sebelumnya.

Selanjutnya adalah menjalankan querynya, eksekusi langsung :D , yakni :
$cat->execute();

Kembali muncul satu pertanyaan, bagaimana jika menggunakan update database dalam oop ? Silahkan lihat kembali baris di bawah ini :

$cat = $mysqli->prepare("update article SET category ='$category', article_title = '$title' where id=?");
$cat->bind_param('i',$id);
$cat->execute();

Sepertinya sudah jelas ya. :).

Definisikan terlebih dahulu querynya :
$cat = $mysqli->prepare("update article SET category ='$category', article_title = '$title' where id=?");

Penuhi syarat query tersebut :
$cat->bind_param('i',$id);   

Jalankan querynya :
$cat->execute();

Sudah jelas ya?  Jika masih ada yang ditanyakan silahkan layangkan email anda ke sini :
alkemail@gmail.com.
Script diatas dapat di download di sini …


Dedicated for ilmuwebsite e-learning community.


Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Update, Delete Database with OOP

Senin, 20 April 2009

Senin, 13 Oktober 2008

Building SMK PUI Cikijing

Sekarang lagi di bangun, mohon do'a restunya!!!

Selasa, 08 Juli 2008

KONSEP SEKOLAH YANG BERJAYA
Sekolah yang berjaya boleh ditakrifkan sebagi sebuah sekolah yang bukan sahaja mencapai kecemerlangan akademik yang baik malahan memberi suasana yang selesa dan teratur serta mempunyai rasa tanggungjawab di kalangan pihak pengurusan , guru-guru dan pelajar-pelajar bagi mencapai aspirasi yang terkandung di dalam Falsafah Pendidikan Negara.

Minggu, 06 Juli 2008


Senin, 16 Juni 2008


SEKILAS TARIKH BERDIRINYA SMK PUI CIKIJING

Sekilas Tarikh berdirinya SMK PUI Cikijing berawal dari pembicaraan Drs. H. Udin Syafrudim, M. M.Pd dengan Drs. H. Endang Samsudin, Tatkala itu mereka sedang melaksanakan Ibadah Haji di tanah Suci, setelah pulang kekampung halaman terjadi obrolan enam mata yaitu : H. Muhamad Syihabudin, SH , Drs. H. Endang Syamsudin dan Drs. Abu Bakar Ash. Dengan kesimpulan obrolan tersebut belum menghasilkan kesepakatan karena ada perbedaan pendapat, yang pada akhirnya dipending untuk sementara.
Dengan tidak diduga pada saat Drs. Abu Bakar Ash berkunjung ke Islamic Center Kab. Majalengka, bertemu dengan Drs. H. Udin Syafrudin M. M.Pd inti dari obrolan mengarah terhadap pendirian SMK PUI Cikijing Kelas Jauh SMK PUI Majalengka, maka terjadi lagi obrolan orang Bertiga yaitu :
Ø H. Mokh Syihabudin, SH ,
Ø Drs. H. Endang Syamsudin dan
Ø Drs. Abu Bakar Ash
Pertemuan tersebut di rumah H. Endang Syamsudin, maka dengan berbagai pertimbangan sepakatlah untuk berdirinya SMK PUI di Cikijing. Lalu dibawa ke forum musyawarah lokal di rumahnya Pa Maman Sukiman yang hadir pada waktu itu dari unsur sesepuh K.H. M Sutarom, K.H E Suryadinata BA, HM. Sukanda dan dari unsure PUI cabang yaitu Maman Sukiman, Drs. H. Sulaeman Hidayat, Drs. Ajid Mansur, Drs. Abu Bakar Ash, Drs. H. Endang Syamsudin, K.H. Uban Syubana, Drs. Abdus Shomad dan Ustad M Sholehudin dan hasil dari Musyawarah tersebut menghasilkan kesepakatan bersama yang diataranya :
Sepakat berdirinya SMK PUI Cikijing Kelas Jauh Majalengka
Membentuk team silaturahmi terdiri dari Maman Sukiman, Drs Abu Bakar Ash, Drs. H. Endang Syamsudin dan Drs. Ajid Mansur.
Selang beberapa hari kemudian team berkunjung bersilahturahmi ke Majalengka, disana diterima oleh
Drs. H. Karna Sobahi, M.M.Pd. selaku kepala Dinas pendidikan Kabubupaten Majalengka,
H. Muhamad Yunus, SH selaku ketua PUI Daerah Kab. Majalengka
Drs. H Udin Syamsudin, M.M.Pd selaku Komite Sekolah dan
Tanto Qustantowi, S. Pd kepala SMK PUI Majalengka.
Pertemuan tersebut bertempat di“AULA HAYANI” tepatnya pada tanggal 22 Maret 2004
Hasil dari silahtrahmi tersebut, Alhamdullilah ada kesepahaman dalam alur pemikiran tentang pendirian SMK PUI.
Singkat cerita maka terbentuklah badan pendiri SMK PUI Cikijing Kelas Jauh SMK PUI Majalengka sebagai berikut

Susunan Badan Pendiri SMK PUI Cikijing
Kelas Jauh SMK PUI Majalengka

Badan Penasehat :
Drs. H. Sulaeman Hidayat
H. Sutarom
H. M. Sukanda (Alm)
K. H. Uban Subana
K. E. Suryadinata, BA

Badan Pembina :
Drs. H. Udin Syafruddin, M.MPd
Drs. Tanto Qustantowi, S.Pd
Drs. H. Endang Syamsuddin
H. M. Yunus, SH
Drs. Abu Bakar Ash

KETUA : H. Endang Suherman, BA
Wakil. Ketua : Drs. Didi Suhedi
Sekretaris : Drs.H. Ajid Mansur
Wkl. Sekretaris : Drs. Eba Ahmad Fauji
Bendahara : Drs. Som Somadiharto
Wkl. Bendahara : H. Nana Sudiana

Maka tepatnya SMK PUI Cikijing berdiri pada tanggal 17 Juli 2004 sebagai tahun perdana penerimaan siswa baru dan berlangsungnya proses Kegiatan Belajar Mengajar ( KBM ).