รบกวนช่วยดูโค้ดการแบ่งหน้าให้ทีครับ
ผมลองทำแล้ว มันแบ่งได้จริงครับ แต่พอคลิกไปหน้าที่ 2 มันก็ยังแสดงรายการเหมือนหน้าที่ 1 อยู่ แทนที่จะเป็นรายการของหน้าที่ 2
ดูจนตาลายแล้วครับ ไม่ทราบว่าผิดที่ตรงไหน
โค้ดครับ :
<?php
/*Connect ฐานข้อมูล */
mysql_connect('localhost','root',''); // connect mysql
mysql_select_db('db_puangkram'); // select database
/* check ว่ามี ค่าตัวแปร $start หรือไม่ ถ้าไม่มีให้ตั้งเป็น 0
ปล. อันนี้ต้องใช้กับตัวแบ่งนะ ห้ามเอาออก*/
if(!isset($start)){
$start = 0;
}
$limit = '2'; // แสดงผลหน้าละกี่หัวข้อ
/* หาจำนวน record ทั้งหมด
ปล. อันนี้ต้องใช้กับตัวแบ่งนะ ห้ามเอาออก*/
$Qtotal = mysql_query("select * from subject_name"); //คิวรี่ คำสั่ง
$total = mysql_num_rows($Qtotal); // หาจำนวน record
/* คิวรี่ข้อมูลออกมาเพื่อแสดงผล */
$Query = mysql_query("SELECT * FROM subject_name ORDER BY subname_id DESC LIMIT $start,$limit"); //คิวรี่คำสั่ง
$totalp = mysql_num_rows($Query); // หาจำนวน record ที่เรียกออกมา
printf("มีหัวข้อทั้งหมด %d หัวข้อ / ",$total);
printf("แสดงหน้าละ %d หัวข้อ<br />",$totalp);
echo "<hr />";
/* วนลูปข้อมูล */
while($arr = mysql_fetch_array($Query)){
echo sprintf("<B>%03d</B>",$arr[subname_id])." - $arr[subname_name]<br />"; // แสดงผล
}
echo "<hr>";
/* ตัวแบ่งหน้า */
$page = ceil($total/$limit); // เอา record ทั้งหมด หารด้วย จำนวนที่จะแสดงของแต่ละหน้า
/* เอาผลหาร มาวน เป็นตัวเลข เรียงกัน เช่น สมมุติว่าหารได้ 3 เอามาวลก็จะได้ 1 2 3 */
for($i=1;$i<=$page;$i++){
if($_GET['page']==$i){ //ถ้าตัวแปล page ตรง กับ เลขที่วนได้
echo "[<a href='?start=".$limit*($i-1)."&page=$i'><B>$i</B></A>]"; //ลิ้งค์ แบ่งหน้า เงื่อนไขที่ 1
}else{
echo "[<a href='?start=".$limit*($i-1)."&page=$i'>$i</A>]"; //ลิ้งค์ แบ่งหน้า เงื่อนไขที่ 2
}
}
?>
ช่วยทีนะครับ หาจนตาลายแล้ว ขอบคุณล่วงหน้าครับผม
$page = $_GET[page];
ปัญหาโลกแตก....