Mau kaos (T-shirt) Wordpress keren? (Selengkapnya)
SEO Complete Guide for Wordpress

Ingin beriklan di atas?


Dapatkan Script SMS Gateway PHP + MySQL

Seperti: software pengirim SMS massal, SMS survei, SMS polling, SMS quick count, SMS dakwah, Web2SMS dan masih banyak lagi... semuanya berbasis PHP & MySQL
[Info Lengkap...]


Membuat Auto Deletion (Hapus Otomatis) Data Dengan Script PHP


September 10th, 2008 | by rosihanari | Cetak Artikel Ini Cetak Artikel Ini

Instant Internet Business Ideas
Ingin beriklan di atas?

Terima kasih mas Niko atas pertanyaannya di komentar di salah satu artikel yang saya posting, karena pertanyaan Anda  telah memotivasi saya untuk membuat artikel ini. Baik para pecinta setia blog.rosihanari.net, kali ini saya akan memberikan tutorial bagaimana membuat script PHP untuk menghapus data secara otomatis setelah selang beberapa waktu (menggunakan satuan hari). Sebagai gambaran, misalkan hal ini kita terapkan di buku tamu (Maaf mas Niko, karena studi kasusnya tentang buku tamu. Untuk studi kasus berita sesuai request Anda, konsepnya sama kok). Dalam buku tamu tersebut, misalkan kita buat kebijakan bahwa lama postingan setiap entri buku tamu diset hanya tampil selama 3 hari. Setelah 3 hari, maka entri buku tamu tersebut akan terhapus secara otomatis dari database. Nah… kira-kira begitu gambarannya.

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
2
3
4
5
6
7
8
CREATE TABLE guestbook (
    id int(11) auto_increment,
    nama varchar(20),
    email varchar(20),
    komentar text,
    tanggal date,
    PRIMARY KEY(id)
)

Nah… dalam kasus ini dimisalkan sebelumnya kita sudah memiliki script untuk entri data buku tamu untuk pengunjung di web kita. Dan berikut ini contoh data yang sudah tersimpan dalam tabel di atas.

1
2
3
4
5
6
7
8
9
10
11
INSERT INTO guestbook VALUES
(1, 'Rosihan Ari', 'rosihanari@gmail.com',
    'This site is great', '2008-06-01'),
(2, 'Dwi Amalia', 'amalia@gmail.com',
    'Hello...', '2008-06-05'),
(3, 'Faza Fauzan', 'fauzan@fauzan.com',
    'Great site dad...', '2008-06-08'),
(4, 'Nada Hasanah', 'nada@hasanah.com',
    'I love u dad', '2008-06-09'),
(5, 'Muh. Ahsani Taqwim', 'ahsani@taqwim.com',
    'Good job dad', '2008-06-10');

Setelah data dan tabel siap, selanjutnya kita bisa mulai membuat script auto deletionnya.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
 
// koneksi ke mysql
 
mysql_connect("namahost","dbuser","dbpass");
mysql_select_db("dbname");
 
// setting timer
 
$lama = 3; // lama data adalah 3 hari
 
// proses penghapusan data
 
$query = "DELETE FROM guestbook
          WHERE DATEDIFF(CURDATE(), tanggal) > $lama";
$hasil = mysql_query($query);
 
?>

Perhatikan script di atas, terutama pada query SQL untuk penghapusan, bahwa syarat yang digunakan untuk penghapusan menggunakan function DATEDIFF(). Function ini digunakan untuk mencari selisih waktu (dalam satuan hari) antara current date dengan data yang ada dalam field tanggal pada tabel guestbook. Jika selisih hari tersebut melebihi lama waktu yang ditentukan (dalam hal ini 3 hari), maka data akan terhapus.

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.


Beberapa artikel terkait


Share this article on:

Kata kunci: PHP -


Ada 40 komentar dalam artikel ini.

  1. sahyunan says:

    web ini sangat membantu.
    [deleted]

  2. prinza says:

    simple script, but it’s very useful, great

  3. mas ko skript yang auto deletionnya g jalan sh??
    mhon bantuannya,makasih sebelumnya

  4. Najamudin says:

    Mas saya mau nanya skrip untuk membuat edit dan hapus, saya sedang memnbuat website form isian biodata tapi kendalanya saya belum bisa menghapus dan mengeit datanya saya hanya bisa menginputnya saja, mohon bantuannya, terima kasih.

  5. rosihanari says:

    to najamudin: untuk edit data silakan baca artikel saya di http://blog.rosihanari.net/script-php-untuk-mengedit-data-via-form/

  6. anis says:

    mas artikelnya2 bagus2..
    mas..aq lagi buat web yang stand alone..
    cuman aq lagi mentok di bagian upload file yang berexstension txt secara otomatis..misal,file itu berada pada folder yang sudah ditentukan.selama ini aq selalu manua dengan cara di file phpnya,aq browse file.txt itu trz klik button submit..berhasil deh data tersebut masuk ke mysql..cuman yang aq perlukan sekarang gimana caranya upload file .txt itu ke mysql secara otomatis tiap jam 6 pagi..ditunggu jawabannya ya mas ke email saya.makasih

  7. rosihanari says:

    to anis: wah saya belum bisa tuh mas

  8. plaza-iklan says:

    bos, query untuk menghapus posting yg lama di database wordpress bagaimana?, please help me

    Postingan terakhir si plaza-iklan di blognya: Trading Forex (online) Bisnis Investasi Dengan Bonus Hingga $175/10 lot

  9. rosihanari says:

    to plaza-iklan: wah kategori posting yang lama itu bagaimana? kalau via admin panel atau dashboard kan bisa mas?

  10. esraldi says:

    kal0 digabungin dengan ajax pasti lebih p0werfull pak, seperti c0unter pnghitung mundur di ujian 0nline jd g hrz nunggu 0rg untk meng execusi. at0 membuat refresh 0t0matis di website, jd ketika wkt hbs mka dia mnjalankn pr0gram refreshny



Tolong beri komentar donk!

Komentar Anda akan berguna untuk kemajuan blog ini.


Mohon maaf, komentar yang menggunakan email palsu atau komentar bernada negatif atau cemooh secara otomatis akan terhapus karena dianggap spam dan tidak akan tampil dalam daftar komentar.

Dimohon jangan pula memasukkan code program dalam bentuk apapun ke dalam komentar karena akan dianggap spam.

*
Untuk membuktikan bahwa komentar Anda bukan spam, tulis kata yang muncul dalam gambar di bawah ini. Bila Anda tidak bisa membaca kata dalam gambar, klik pada gambar tersebut untuk mendengarkan suara dari kata tersebut
Click to hear an audio file of the anti-spam word