|
|
|
จะสามารถ select ข้อมูล แบบนี้อย่างไงครับ ตัดบทความหน้าแรกทิ้งไป 5 บทความ |
|
|
|
|
|
|
|
คือผมไม่เข้าในว่า ID รัน Auto ใช่ไหมครับ [auto increment ?] แล้วก็บทความที่คุณบอกจะตัดออกเป็นข้อความเก่าหรือเปล่าครับ
ช่วยอธิบายด้วยครับ
|
|
|
|
|
Date :
2011-06-03 17:14:29 |
By :
ppanchai |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช่ครับ id เป็น auto increment
คือบทความที่จะตัดออกนั้น จะแสดงอยู่ในหน้าแรก 5 บทความ ก่อนแล้ว เป็นบทความใหม่ล่าสุด พอคลิกไปอีกหน้า จะให้แสดงบทความที่ 6 ในอีกหน้าหนึ่ง ซึ่งแยกจากหน้า index หลัก ซึ่งหน้าใหม่นี้ จะแบ่งหน้า หน้าละ 10 บทความ แต่ เริ่มจาก แถวที่ 6 เป็นต้นไป ไม่ select 5 แถวแรกครับ
|
|
|
|
|
Date :
2011-06-03 17:26:34 |
By :
Mครับ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอนนี้คือผมคิดได้วิธีเดียวคือ
ขั้นที่ 1 "Select count(*) from news" จะได้จำนวน Record ทั้งหมด จากนั้นก็นำค่าไปเก็บในตัวแปร
ขั้นที่ 2 จากนั้นนำค่าที่ได้เก็บไว้ในตัวแปรไปลบ 5 (ตัวแปร = ตัวแปร - 5)
ขั้นที่ 3 ก็ "select * from news order by ID ASC limit ตัวแปร" [ถ้าผมจำไม่ผิด ASC นี่น้อยไปหามากมั้ง ฮ่าๆๆๆ]
ลองดูนะครับ ผมคิดว่ามันก็จะเอาตั้งแต่เรคคอร์ดแรกไปจนถึงเรคคอร์ดที่เรา Limit ไว้ โดยอีก 5 เรคคอร์ดที่เหลือมันก็จะไม่เอาโดยปริยาย
|
ประวัติการแก้ไข 2011-06-03 17:36:22
|
|
|
|
Date :
2011-06-03 17:34:44 |
By :
ppanchai |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อืม..งงๆครับ อ่ะลองดูหล่ะกันน่ะ
Code (PHP)
// 1.
$query_max=mysql_query("select max(id) as maxid from table"); // หาค่า id ที่มากที่สุด
$max=mysql_fetch_array($query_max);
$ID_=(($max['maxid'])-5); // เอาไอดี 5 อันสุดท้ายทิ้งไป สมมุติ ถ้ามีหทั้งหมด 200 recoed $ID_จะมีค่าเป็น 195
//2.
$query_show = mysql_query("select * from table where id <='$ID_'"); // Query เอาตั้งแต่ id=1 ถึง id=195
while($array=mysql_fetch_aray($query_show))
{
//แสดงผล
}
|
|
|
|
|
Date :
2011-06-03 22:33:48 |
By :
mangkunzo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
หน้าแรก
Code (PHP)
select * from table order by id desc limit 0,5
-----------------------------------------------------------
หน้าใน
Code (PHP)
$page = (isset($_GET['page']))? intval($_GET["page"]) : 0;
$limit = 10;
$start = ($page-1)*$limit + 5;
$sql = "select * from table limit " . $start. "," . $limit;
|
ประวัติการแก้ไข 2011-06-04 03:17:04
|
|
|
|
Date :
2011-06-04 03:16:25 |
By :
PlaKriM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สมมุติว่า 101,104,105,109,120 คือ 5 กระทู้แรก
select * from tb where id not in(101,104,105,109,120)
|
|
|
|
|
Date :
2011-06-04 04:05:39 |
By :
num |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|