Script PHP Untuk Auto Published Artikel

OK… di sini saya akan menjelaskan cara membuat script auto publish tersebut. Selanjutnya script ini nanti akan dijalankan menggunakan Cron Jobs. Wah apa itu Cron Jobs? Bagi yang masih awam dengan istilah ini.. Cron Jobs adalah fitur yang ada di web hosting yang nantinya dapat digunakan untuk menjalankan suatu proses terjadwal (on schedule) secara otomatis. Terjadwal di sini bisa setiap jam, menit, hari, minggu, dan bulan. Nah… dengan bantuan Cron Jobs ini nanti, kita akan menjalankan script untuk mempublish otomatis artikel sesuai tanggal yang telah ditentukan.

Sebagai contoh misalkan kita memiliki sebuah tabel untuk menyimpan artikel di web sebagai berikut:

1.CREATE TABLE article (
2.id int(11) auto_increment,
3.title varchar(30),
4.author varchar(30),
5.publishDate date,
6.statusPublish int,
7.PRIMARY KEY(id)
8.);
dengan field ‘id’ adalah menyatakan kode unik dari artikel, ‘title’ menyatakan judul artikel, ‘author’ adalah nama penulis dan ‘publishDate’ menyatakan tanggal publikasi artikel tersebut. Lalu… ada pula field bernama ‘statusPublish’. Buat apa ya field tersebut? Nah.. field ini nanti akan diisi dengan suatu bilangan 0 atau 1. Bila suatu artikel bernilai 0 artinya artikel tersebut belum dipublish. Sedangkan bila diisi dengan 1 maka artikel akan terpublish. Anda bisa pula menggunakan pembeda keadaan tersebut dengan bilangan yang lain (tidak harus 0 dan 1).
Nah.. ide untuk mempublish atau belum adalah di field ‘statusPublish’ dan ‘publishDate’ ini. Setelah suatu artikel disimpan atau diposting, maka secara default nilai ‘statusPublish’ akan bernilai 0 terlebih dahulu. Kemudian jika telah mencapai tanggal tertentu sesuai ‘publishDate’ nya maka secara otomatis berubah menjadi 1. Untuk mengubah ‘statusPublish’ ini nantinya kita gunakan suatu script yang dijalankan secara otomatis dengan Cron Jobs. Dah paham ya idenya?? Simpel bukan? :-)
OK.. sekarang kita buat script PHP nya.
publish.php

01.<?php
02. 
03.// koneksi ke mysql
04. 
05.mysql_connect("dbhost", "dbuser", "dbpass");
06.mysql_select_db("dbname");
07. 
08.// mengubah status publish menjadi 1 jika publishDate = tanggal sekarang
09. 
10.$query = "UPDATE article SET statusPublish = 1 WHERE publishDate = CURDATE()";
11.$hasil = mysql_query($query);
12. 
13.?>
Simpel ya scriptnya?? Selanjutnya bagaimana menjalankan script publish.php di atas menggunakan Cron Jobs? Ini dia caranya:
  • Masuklah ke dalam CPanel
  • Masuklah ke Cron Jobs dalam CPanel. Biasanya menu ini terletak di bagian paling bawah CPanel (di bagian Advanced)
  • Pilihlah ‘Every Days’ pada bagian ‘Days’ untuk menjalankan Cron Jobs setiap hari
  • Tulislah perintah
    php -q /home/usernameAnda/public_html/.../publish.php
    pada bagian ‘Command to Run’. Perintah tersebut digunakan untuk menjalankan script PHP dengan nama script ‘publish.php’. Jangan sampai salah dalam menuliskan path menuju scriptnya.
  • Klik tombol Save Crontab
Setelah semua setting Cron Jobs selesai, maka script publish.php itu akan dijalankan setiap hari secara otomatis. Anda bisa pula menambahkan setting setiap jam berapa untuk menjalankan script tersebut dalam Cron Jobs.
Selesai deh artikelnya.. silakan dicoba ya. Mudah-mudahan berhasil.

sumber : http://blog.rosihanari.net