A-AA+then

เรื่องการเรียงของกระทู้ครับ

913
หวัดดีครับ

ผมมีเรื่องอยากรบกวนครับ คือว่าผมอยากให้กระทู้ ที่ใช้ widget ดึงกระทู้จากบอร์ดหรือบทความไปแสดงหน้าแรก


และ

กระทู้ในหน้าของบอร์ด หรือบทความนั้นๆ ครับ

ถ้าอยากให้มันเรียงจากกระทู้ล่าสุด อยู่บนสุดเลย เวลาคนตอบกระทู้ ไม่ต้องให้มันไปอยู่ด้านบนอีก (เพราะมีบอกว่าตอบล่าสุดแล้ว)

ช่วยแนะนำด้วยครับ จะทำอย่างไรได้บ้างครับ ขอบคุณครับ

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

555+++ ต่างคนต่างชอบ

คำแนะนำคือ แก้ไข query ครับ ตรง order by เลือก ฟิลด์ที่ต้องการเรียงลำดับได้เลย

ดูที่ main.php ครับ  (ใน modules/)

1

ผมหาแล้ว ใน modules/board ใช่ไหมครับ มีแต่
<?php
 if (defined('MAIN_INIT')) {
  if (isset($_REQUEST['wbid'])) {
   require_once (ROOT_PATH.'modules/board/view.php');
  } else {
   require_once (ROOT_PATH.'modules/board/list.php');
  }
 }

ผมต้องไปหาใน view หรือ list ครับ (น่าจะ list)

เจอบรรทัด 43
   $sql .= "ORDER BY Q.`id` DESC";

เจอบรรทัด  49
   $sql .= "ORDER BY `d` DESC ";


แก้ตรงไหนครับ อีกอย่างครับ กระทู้มันไม่คงอยู่ครับ คือว่า กระทู้ล่าสุดหน้าแรก 10 กระทู้ล่าสุด แต่ว่าไม่ใช่ น่าจะมาจากการอัพเดทหรือเปล่าครั บ ฟิกได้ไหมครับ
2

list.php สำหรับ ลิสต์รายการกระทู้ที่หน้า บอร์ด

ถ้าต้องการจะแก้การเรียงลำดับที่หน้าแรก ต้องเป็น news.php

การแก้ไข news.php ไม่มีผลในทันที การเรียงลำดับจะเกิดขึ้นเมื่อมีกระทู้เปลี่ยนแปลงในครั้งต่อไปเท่านั้น
3

ขอบคุณครับ แล้วแก้อันไหนอ่ะครับ เปลี่ยนตรง id เป็นไรครับ หรือว่าเปลี่ยนแค่ id เป็น ASC
4

ตอนนี้ได้แล้วครับ หน้าแรก ที่ดึงไปแสดง จะโชว์กระทู้ล่าสุดด้านบนครับ ถึงแม้ว่าจะตอบกระทู้ มันก็ไม่ขยับ

ต่อมาในส่วนของ หน้าราชื่อกระทู้ในบอร์ด แก้แล้ว จาก d เป็น id เรียงจากมากไปน้อย กระทู้ล่าสุดอยู่ข้างบนแล้วครับ
 หรือถ่าต้องการแบบเดิมก็เปลี่ยนเป็น d ครับ ก็จะเรียงจากการตอบกระทู้ล่าสุด

(ที่ผมอยากจะเรียงจาก id เพราะว่า ถ้าเป็นกระทู้เมื่อ 3 เดือน หรือเป็นปีแล้ว พอคนไปขุด มันก็วิ่งมาอยู่ด้านบนได้ครับ อิอิ)

แก้บรรทัด  49
   $sql .= "ORDER BY `id` DESC ";

ขอบคุณมากนะครับ ไว้มีอะไรจะแวะมาขอความช่วยเหลืออีกนะครับ คงไม่ว่านะครับ

5
^