Membuat PAGE 1 2 3
21-04-2007 | 09:45:29 | Halaman Ini dibaca 13034 kali
Hai selamat pagi semuanya, kali ini saya akan menunjukkan bagai mana cara membuat halaman bertingkat dalam sebuah website yang content nya di generate dari database, Jika anda memiliki "Dinamic Website" yang besar dan memiliki ribuan item /product anda pasti kesulitan untuk menampilkan item tersebut satu persatu secara beraturan, otomatis dan terkendali.
Solusinya adalah anda bisa memakai halaman,
<-Previous 1 2 3 Next->
dan halaman tersebut contentnya di ambil dari database MySql, selain itu kita juga bisa menentukan berapa item yang akan kita tampilkan per-halaman.
Menarik bukan???
ini deskripsi nya:
koneksi db.php:
------
<?php
$dbhost = 'localhost';
$dbusername = 'user_kamu';
$dbpasswd = 'pass_kamu';
$database_name = 'database_kamu';
#under here, don't touch!
@$connection = mysql_pconnect("$dbhost","$dbusername","$dbpasswd") or die
("MySql Putus tidak bisa connect ke server");
@$db = mysql_select_db("$database_name", $connection) or die("Database tidak ditemukan");
?>
tabel database yang saya gunakan (ini haya contoh):
-----
CREATE TABLE `content` (
`id` int(225) NOT NULL auto_increment,
`judul` varchar(50) collate latin1_general_ci NOT NULL default '',
`isi` longtext collate latin1_general_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=5 ;
-----
Deskripsi Script:
--------------------------
<?php
/* ini kita include koneksi database */
include 'db.php';
/* tentukan table nya */
$table = content;
$hal = $_GET[hal];
/* jika page default nya 1 */
if(!isset($_GET['hal'])){
$page = 1;
} else {
$page = $_GET['hal'];
}
/* tentukan jumlah item per halaman */
$max_results = 5;
/* halaman di kali MAX jumlah item per halaman dikurangi MAX jumlah item per halaman */
/* logika: 1 x 5 = 5 , 5 - 5 = 0 , jadi id database dimulai dari 0*/
$from = (($page * $max_results) - $max_results);
/* tampilkan dari databse, LIMIT dari contuh diatas id dari 0 sampai 5 */
$sql = mysql_query("SELECT * FROM $table ORDER BY id DESC LIMIT $from, $max_results ");
while($row = mysql_fetch_array($sql)){
/* display result, ini tergantung table database mu */
?>
<?php echo $row[2] ?><br>
<?php echo $row[3] ?></a><br />
<?php echo $row[1] ?> | Halaman Ini dibaca <?php echo $row[6] ?> kali<br />
<?php echo $row[4]; ?>
<hr>
<?php
}
$total_results = mysql_result(mysql_query("SELECT COUNT(*) as Num FROM $table"),0);
$total_pages = ceil($total_results / $max_results);
/* bangun jumlah hiperlink halaman*/
echo "<center>Select a Page<br />";
/* bangun Previous link */
if($hal > 1){
$prev = ($page - 1);
echo "<a href=$_SERVER[PHP_SELF]?hal=$prev> <-Previous </a> ";
}
for($i = 1; $i <= $total_pages; $i++){
if(($hal) == $i){
echo "$i ";
} else {
echo "<a href=$_SERVER[PHP_SELF]?hal=$i>$i</a> ";
}
}
/* bangun Next link */
if($hal < $total_pages){
$next = ($page + 1);
echo "<a href=$_SERVER[PHP_SELF]?hal=$next>Next-></a>";
}
echo "</center>";
?>
----------------
Code lebih lengkap nya:
-----------------------
<?php
include 'db.php';
$table = content;
$hal = $_GET[hal];
if(!isset($_GET['hal'])){
$page = 1;
} else {
$page = $_GET['hal'];
}
$max_results = 5;
$from = (($page * $max_results) - $max_results);
$sql = mysql_query("SELECT * FROM $table ORDER BY id DESC LIMIT $from, $max_results ");
while($row = mysql_fetch_array($sql)){
?>
<?php echo $row[2] ?><br>
<?php echo $row[3] ?></a><br />
<?php echo $row[1] ?> | Halaman Ini dibaca <?php echo $row[6] ?> kali<br />
<?php
echo $row[4];
?>
<hr>
<?php
}
$total_results = mysql_result(mysql_query("SELECT COUNT(*) as Num FROM $table"),0);
$total_pages = ceil($total_results / $max_results);
echo "<center>Select a Page<br />";
if($hal > 1){
$prev = ($page - 1);
echo "<a href=$_SERVER[PHP_SELF]?hal=$prev> <-Previous </a> ";
}
for($i = 1; $i <= $total_pages; $i++){
if(($hal) == $i){
echo "$i ";
} else {
echo "<a href=$_SERVER[PHP_SELF]?hal=$i>$i</a> ";
}
}
// Build Next Link
if($hal < $total_pages){
$next = ($page + 1);
echo "<a href=$_SERVER[PHP_SELF]?hal=$next>Next-></a>";
}
echo "</center>";
?>
-----------------------
sekian terimakasih...
Referensi luar negri
Saya modifikasi supaya mudah di gunakan dan di implementasikan oleh teman-teman semua
Script ini telah di test dan jalan 100% di:
- mesin pentium III 650Mhz
- ram 256mb
- server konsol server XAMPP versi 1.5.3 Beta 5
Jika ada pertanyaan kirim email ke: black.scorpio.night@gmail.com
atau sms ke 085648173225
atau tulis comment di bawah ini
Membuat halaman tersebut diatas asli buka karya saya, tapi saya telah mencoba mempergunakan pada website, dan hasilnya sangat bagus sekali. Dan kita ucapkan terima kasih kepada penulis diatas semoga ilmunya bertambah dan rezekinya bertambah. amin.
Ada bisnis online yang dapat membayar kita yaitu dengan melakukan
klik pada email yaitu http://no-minimum.com dan http://www.getfastpaidmail.com dan ini sudah terbukti walaupun nilainya masih kecil, kalau dikumpulkan akan bertambah banyak, apalagi kalau kita punya downline yang banyak. Gambar dibawah tersebut sebagai buktinya. Kalau ingin tahu caranya lebih detail silahkan baca disini : http://siswo.com/info.bisnis/bisnis internet.php
Adbrite International Bisnis
Velocityclick.com