Yang patut anda ketahui sebelum melakukan hal ini adalah, anda harus mengetahui terlebih dahulu dasar-dasar dari Regular Expression, tidak wajib untuk hafal, tapi mutlak bagi anda untuk mengerti setidaknya dasar dari regular expression.
Setelah persyaratan terpenuhi, penulis membaginya menjadi beberapa step, analogi pengambilan content di situs lain kemudian di letakkan di website anda adalah sama seperti ketika seseorang yang membuka satu situs, kemudian mengcopykan sebagian isinya dan mempastekan di situsnya, sehingga dalam pseudo code-nya …
buka websitenya …
pilih content yang ingin di ambil
copy kan content yang diambil
lalu tampilkan content yang diambil tersebut pada website anda
untuk melakukan hal ini kita memanfaatkan regular expression dan fungsi file_get_contents yang sudah di sediakan pada php
Oke, penulis mengambil contoh kasus, bagaimana menampilkan jadwal sholat hari ini yang jadwalnya itu di ambil dari website http://www.pkpu.or.id/adzan.php?id=83.
Penulis akan mengambil jadwal hari ini saja, yang mana barisnya ini di wakili oleh tanda highlight berwarna abu dengan tulisan putih didalamnya dan juga kita akan ambil tag head milik table jadwal sholat dan jadwal sholat hari ini …
dalam view source nya …
<tr align=”center”>
<td><b>Date</b></td><td><b>Imsyak</b></td><td><b>Fajr</b></td><td><b>Syuruq</b></td><td><b>Dzuhr</b></td><td><b>Asr</b></td><td><b>Maghrib</b></td><td><b>Isha</b></td></tr>
dan
<tr align=”center”><td><b>11</b></td><td>04:30:51</td><td>04:37:12</td><td>05:57:26</td><td>12:07:14</td><td>15:23:21</td><td>18:16:57</td><td>19:28:40</td></tr>
script lengkapnya adalah :
<?php
$text = file_get_contents(”http://www.pkpu.or.id/adzan.php?id=83″);
echo “<table border=’1′>”;
preg_match_all(’#<trsclass=”table_header(.+?)>(.+?)</tr>#siu’, $text, $result);
for ($x = 0, $jumlah = count($result[0]); $x < $jumlah; $x++) {
echo $result[2][$x] . “n”;
}
echo “</tr><tr>”;
preg_match_all(’#<trsclass=”table_highlight(.+?)>(.+?)</tr>#siu’, $text, $result);
for ($x = 0, $jumlah = count($result[0]); $x < $jumlah; $x++) {
echo $result[2][$x] . “n”;
}
echo “</tr></table>”;
?>
penulis akan jelaskan sedikit cara kerja script ini …
pertama semua isi halamannya dengan file_get_contents
$text = file_get_contents(”http://www.pkpu.or.id/adzan.php?id=83″);
lalu, kita cocokkan dengan pattern atau pola dari header table yang akan di ambil …
preg_match_all(’#<trsclass=”table_header(.+?)>(.+?)</tr>#siu’, $text, $result);
kita lihat polanya …
#<trsclass=”table_header(.+?)>(.+?)</tr>#siu
ini berarti mulai dari tag <tr> yang memilikitable_header … sampai tag </tr> penutup
sehingga jika ada banyak data … nanti yang di ambil cuma
…
<tr align=”center”>
<td><b>Date</b></td><td><b>Imsyak</b></td><td><b>Fajr</b></td><td><b>Syuruq</b></td><td><b>Dzuhr</b></td><td><b>Asr</b></td><td><b>Maghrib</b></td><td><b>Isha</b></td></tr>
…
sedangkan pengulangan di bawah ini cuma untuk mewaspadai jika terdapat banyak sekali <tr> dengan class yang sama … dan sekaligus pengulangan ini digunakan untuk menampilkan hasil dari pengambilan datanya …
for ($x = 0, $jumlah = count($result[0]); $x < $jumlah; $x++) {
echo $result[2][$x] . “n”;
}
script yang di bawahnya sama saja dengan yang penulis jelaskan sebelumnya. Dan hasilnya nanti akhirnya lihat disini . Dan hasilnya itu akan terus berubah sesuai dengan pergantian hari. Dan anda dapat mengimplementasikan teknik ini untuk hal yang lain yang tentunya sangat bermanfaat. Contoh Jadwal Sholat yang contentnya di ambil dari PKPU http://www.ilmuwebsite.com/sholu.php untuk scriptnya http://www.ilmuwebsite.com/sholu.php.txt
silahkan script lengkapnya download di sini …
Selamat mencoba.