A-AA+then

รบกวนช่วยดูโค้ดการแบ่งหน้าให้ทีครับ

1,142

ผมลองทำแล้ว มันแบ่งได้จริงครับ แต่พอคลิกไปหน้าที่ 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
}
}
?>

ช่วยทีนะครับ หาจนตาลายแล้ว ขอบคุณล่วงหน้าครับผม

1 ความคิดเห็น

$start = $_GET[start];
$page = $_GET[page];

ปัญหาโลกแตก....
1
^