Minggu, 28 Juni 2009

PSB SMPN1MANONJAYA

PENERIMAAN SISWA BARU SMP NEGERI 1 MANONJAYA TELAH DIBUKA
MULAI TANGGAL 29 JUNI S.D 4 JULI 2009

FORMULIR
F1
F2

Senin, 02 Maret 2009

Update, Delete Database with OOP


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

Sabtu, 12 Juli 2008

Profil

PROFIL SEKOLAH

1. Nama Sekolah : SMP NEGERI I MANONJAYA

Alamat (Jalan/Desa/Kecamatan : Jalan Tangsi No. 3 Manonjaya

Kab/Kota, No. Telp. : Tasikmalaya (0265)380907

2. Nama Yayasan (bagi swasta) : -

Alamat Yayasan& No Tlp : -

3. NIS : 20.1.02.12.22005

4. Jenjang Akreditasi : A.89.05

5. Tahun didirikan / Th. Beroperasi : 1962 / 1962

6. Kepemilikan Tanah : Pemerintah/Yayasan/Pribadi/Menyewa/Menumpang*)

Luas tanah / Status tanah : 4965,86m/SHM/HGB/Hak Pakai/Akte jual- beli/Hibah*)

7. Status bangunan : Pemerintah/Yayasan/Pribadi/Menyewa/Menumpang*)

a. Surat Ijin Bangunan : No 503 / 642.2 / SK. 571 / DPTLH Tsm / 2007

b. Luas seluruh Bangunan : 2430m2

8. No Rekening rutin Sekolah : 0050010064807 , Bank Jabar Cabang Tasikmalaya

9. Data siswa dalam 4 (empat) tahun terakhir

Tahun Ajaran

Jml Pendaftar (calon siswa Baru)

Kelas I

Kelas II

Kelas III

Jumlah

Jml siswa

Jml Romb Belajar

Jml siswa

Jml Romb Belajar

Jml siswa

Jml Romb Belajar

siswa

Romb belajar

Th.2003/2004

382 org

266 org

7 rbl

291 org

6 rbl

277 org

6 rbl

834 org

19rbl

Th.2004/2005

384 org

281 org

7 rbl

272 org

6 rbl

288 org

6 rbl

841 org

19rbl

Th.2005/2006

446 org

384 org

8 rbl

288 org

7 rbl

275 org

6 rbl

947 org

21rbl

Th.2006/2007

460 org

377 org

8 rbl

378 org

8 rbl

293 org

7 rbl

1048org

23rbl

Th 2007/2008

464 org

413 org

9 rbl

369 org

9 Rbl

371 org

9 rbl

1151Org

27 rbl

10. a) Data Ruang Kelas


Jumlah Ruang Kelas Asli (d)

Jumlah ruang lainnya yang digunakan untuk ruang kelas (e)

Jumlah ruang yang digunakan untuk ruang kelas f=(d+e)

Ukuran 7x9m2 (a)

Ukuran >63 m2 (b)

Ukuran <>

Jumlah d=(a+b+c)

Ruang Kelas

29

-

-

-

Jumlah: - Ruang

Yaitu :……………..

……………..

-

b)Data Ruang Lainnya

Jenis Ruang

Jumlah

Ukuran(m2)

Jenis Ruang

Jumlah

Ukuran(m2)

1. Perpustakaan

1

9 x 9

4. Lab IPA

1

10 x 11

2. ketrampilan

-

- x -

5. Lab Bahasa

-

- x -

3. Asrama Guru

-

- x -

6. Lab Komputer

1

9 x 7

11. Data Guru

Jumlah Guru/Staf

Bagi SMP Negeri

Bagi SMP Swasta

Keterangan

Guru Tetap (PNS/Yayasan)

47 org

- org

-

Guru Tdk Tetap/Guru Bantu

11/2 org

- org

-

Guru PNS Dipekerjakan(DPK)

- org

- org

-

Staf Tata Usaha

11 org

- org

PNS 5/Sukwan 6