สาเหตุ 99% มาจากไฟล์ view_thread.php ของระบบ SMD ที่เราแก้ก่อนหน้านี้ (เช่น title, query, include ฯลฯ)
เพื่อแก้แบบเร็วที่สุด → ทำตามนี้ทีละขั้นตอน
✅ 1) เปิด Error Reporting เพื่อดูสาเหตุจริง
เพิ่มโค้ดนี้บนสุดของไฟล์ view_thread.php
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
แล้วรีเฟรชหน้า → จะเห็น error จริง เช่น
undefined variable
fatal error in database query
include file not found
fetch ของ topic ไม่เจอ
เอา error ที่ขึ้นมาให้ผมดูได้เลย เดี๋ยวแก้ให้ทันที
✅ 2) ตรวจไฟล์ที่เกี่ยวข้องว่ามี include หรือ require ตาย
เช่นใน view_thread.php ต้องมีอะไรประมาณนี้:
require_once '../core/init.php';
require_once '../core/db.php';
require_once '../core/functions.php';
ถ้า path ผิด → 500 ทันที
✅ 3) ตรวจการ Query topic ว่าถูกต้องไหม
สำหรับระบบ SMD ของคุณ table คือ:
smd_topics
smd_posts
ควรมี query แบบนี้:
$topic_id = (int)$_GET['id'];
$topic = $db->query("SELECT * FROM smd_topics WHERE id = $topic_id")->fetch_assoc();
if (!$topic) {
die("Topic not found");
}
ถ้าตัวแปร $db ไม่เจอ → error
ถ้า table ชื่อผิด → error
ถ้า fetch ไม่สำเร็จ → error
✅ 4) Title ไม่ขึ้น → อันนี้อยู่ใน <title>
ควรเขียนแบบนี้:
<title><?php echo htmlspecialchars($topic['title']); ?> - <?php echo $site_name; ?></title>
ถ้า $topic['title'] ไม่มี → PHP Crash
❗ สรุป: ต้องรู้ Error ที่มันทิ้งออกมา
ตอนนี้ 500 ไม่มีข้อมูล ต้องเปิด error reporting
0 ความคิดเห็น:
แสดงความคิดเห็น