Konsep untuk membuat script auto deletion tersebut sangat simple, yaitu hanya memanfaatkan proses pengolahan waktu untuk mencari selisih antara waktu ketika data dientri dengan tanggal saat ini (current date). Dengan demikian untuk setiap data, harus diberi catatan waktu/tanggal kapan data tersebut dientri. Nah… jika selisih waktu tersebut melebihi batas waktu yang kita tentukan, maka jalankan proses penghapusan data.
OK… kita langsung saja buat script PHP untuk auto deletion ini dengan mengambil studi kasus tentang buku tamu. Terlebih dahulu kita siapkan tablenya:
1.CREATE TABLE guestbook (2. id int(11) auto_increment,3. nama varchar(20),4. email varchar(20),5. komentar text,6. tanggal date,7. PRIMARY KEY(id)8.)01.INSERT INTO guestbook VALUES02.(1, 'Rosihan Ari', 'rosihanari@gmail.com',03. 'This site is great', '2008-06-01'),04.(2, 'Dwi Amalia', 'amalia@gmail.com',05. 'Hello...', '2008-06-05'),06.(3, 'Faza Fauzan', 'fauzan@fauzan.com',07. 'Great site dad...', '2008-06-08'),08.(4, 'Nada Hasanah', 'nada@hasanah.com',09. 'I love u dad', '2008-06-09'),10.(5, 'Muh. Ahsani Taqwim', 'ahsani@taqwim.com',11. 'Good job dad', '2008-06-10');01.02. 03.// koneksi ke mysql04. 05.mysql_connect("namahost","dbuser","dbpass");06.mysql_select_db("dbname");07. 08.// setting timer09. 10.$lama = 3; // lama data adalah 3 hari11. 12.// proses penghapusan data13. 14.$query = "DELETE FROM guestbook15. WHERE DATEDIFF(CURDATE(), tanggal) > $lama";16.$hasil = mysql_query($query);17. 18.?>Misalkan tanggal hari ini adalah 10 Juni 2008 (2008-06-10), dan begitu script di atas dijalankan, maka data yang terhapus secara otomatis adalah record 1 dan 2.
Nah… mungkin di antara Anda ada yang menanyakan, berarti kita harus mengeksekusi script di atas tiap hari donk? dan menjadi semi otomatis jadinya. Mmmm.. hal ini bisa diatasi yaitu dengan mengincludekan script di atas ke halaman index atau bagian header situs Anda (dengan asumsi setiap hari ada pengunjung situsnya). Setiap kali orang mengunjungi situs Anda, pasti secara otomatis akan menjalankan script di atas.
OK… saya kira demikian artikel ini dibuat. Untuk saran, pertanyaan dan diskusi silakan posting komentar di bawah ini. Sekali lagi terimakasih mas Niko atas pertanyaan sekaligus requestnya......
No comments:
Post a Comment