🔍 DIAGNOSTIC REPORT - rencana_kerja.php
📂 File Path
/home/anam5948/public_html/inventory_acf/pages/admin/rencana_kerja.php
✅ File ditemukan!
📄 Lines 40-60 (Around Error Line 45)
40 // Build WHERE conditions
41 $whereConditions = ["rk.is_deleted = 0"];
42 $params = [];
43 $types = '';
44
>>> 45 if ($dateFrom && $dateTo) {
46 $whereConditions[] = "rk.tenggat_waktu BETWEEN ? AND ?";
47 $params[] = $dateFrom;
48 $params[] = $dateTo;
49 $types .= 'ss';
50 } elseif ($dateFrom) {
51 $whereConditions[] = "rk.tenggat_waktu >= ?";
52 $params[] = $dateFrom;
53 $types .= 's';
54 } elseif ($dateTo) {
55 $whereConditions[] = "rk.tenggat_waktu <= ?";
56 $params[] = $dateTo;
57 $types .= 's';
58 }
59
60 if ($filterDepartment) {
🔎 Semua Query dengan 'deadline' atau 'tenggat_waktu'
✅ Tidak ada 'deadline' ditemukan
✅ FOUND 'tenggat_waktu' di 5 baris:
| Line | Content |
|---|
| 46 | $whereConditions[] = "rk.tenggat_waktu BETWEEN ? AND ?";
|
| 51 | $whereConditions[] = "rk.tenggat_waktu >= ?";
|
| 55 | $whereConditions[] = "rk.tenggat_waktu <= ?";
|
| 81 | ORDER BY assignee.department ASC, rk.tenggat_waktu ASC
|
| 1476 | <td><?= date('d M Y', strtotime($task['tenggat_waktu'])) ?></td>
|
🎯 Query Utama (Baris 30-75)
30 // ✅ DEBUGGING - Cek apakah ada data
31 $testQuery = "SELECT COUNT(*) as total FROM rencana_kerja WHERE is_deleted = 0";
32 $testResult = $conn->query($testQuery);
33 $testData = $testResult->fetch_assoc();
34
35 // Get filters
36 $dateFrom = isset($_GET['date_from']) ? $_GET['date_from'] : '';
37 $dateTo = isset($_GET['date_to']) ? $_GET['date_to'] : '';
38 $filterDepartment = isset($_GET['department']) ? $_GET['department'] : '';
39
40 // Build WHERE conditions
41 $whereConditions = ["rk.is_deleted = 0"];
42 $params = [];
43 $types = '';
44
45 if ($dateFrom && $dateTo) {
46 $whereConditions[] = "rk.tenggat_waktu BETWEEN ? AND ?";
47 $params[] = $dateFrom;
48 $params[] = $dateTo;
49 $types .= 'ss';
50 } elseif ($dateFrom) {
51 $whereConditions[] = "rk.tenggat_waktu >= ?";
52 $params[] = $dateFrom;
53 $types .= 's';
54 } elseif ($dateTo) {
55 $whereConditions[] = "rk.tenggat_waktu <= ?";
56 $params[] = $dateTo;
57 $types .= 's';
58 }
59
60 if ($filterDepartment) {
61 $whereConditions[] = "assignee.department = ?";
62 $params[] = $filterDepartment;
63 $types .= 's';
64 }
65
66 $whereClause = implode(' AND ', $whereConditions);
67
68 // Main query
69 $sql = "
70 SELECT
71 rk.*,
72 creator.full_name AS creator_name,
73 assignee.full_name AS assignee_name,
74 assignee.department AS department,
75 approver.full_name AS approver_name
✅ SOLUSI LENGKAP
Ganti SEMUA yang bertuliskan 'deadline' dengan 'tenggat_waktu'
Terutama di baris-baris yang ditampilkan di atas dengan background merah.
Query yang BENAR (Copy-Paste):
$query = "
SELECT
rk.*,
creator.full_name AS creator_name,
assignee.full_name AS assignee_name,
approver.full_name AS approver_name
FROM rencana_kerja rk
LEFT JOIN users creator ON rk.created_by = creator.id
LEFT JOIN users assignee ON rk.assigned_to = assignee.id
LEFT JOIN users approver ON rk.approval_by = approver.id
WHERE rk.is_deleted = 0 $dateFilter
ORDER BY rk.tenggat_waktu ASC
";
⚠️ AFTER EDIT:
- Save file
- Stop Laragon
- Start Laragon
- Clear browser cache (CTRL + SHIFT + R)