ไม่พบข้อมูลผู้ใช้'; exit; } $error = ''; $message = ''; if ($_SERVER['REQUEST_METHOD'] === 'POST') { $staff_code = trim($_POST['staff_code'] ?? ''); $name = trim($_POST['name'] ?? ''); $email = trim($_POST['email'] ?? ''); $password = trim($_POST['password'] ?? ''); if (empty($staff_code) || empty($name) || empty($email)) { $error = 'กรุณากรอกข้อมูลให้ครบถ้วน'; } else { try { $db = getDB(); // Check if staff code is already in use by another user $stmt = $db->prepare("SELECT COUNT(*) FROM users WHERE staff_code = ? AND id != ?"); $stmt->execute([$staff_code, $id]); if ($stmt->fetchColumn() > 0) { $error = 'รหัสบุคลากรนี้มีผู้ใช้อื่นใช้อยู่แล้ว'; } else { if (!empty($password)) { $stmt = $db->prepare("UPDATE users SET staff_code=?, name=?, email=?, password=? WHERE id=?"); $stmt->execute([$staff_code, $name, $email, password_hash($password, PASSWORD_DEFAULT), $id]); } else { $stmt = $db->prepare("UPDATE users SET staff_code=?, name=?, email=? WHERE id=?"); $stmt->execute([$staff_code, $name, $email, $id]); } // Update session username to match new name $_SESSION['username'] = $name; $message = 'บันทึกการแก้ไขเรียบร้อย'; $user = getUser($id); } } catch (PDOException $e) { $error = 'เกิดข้อผิดพลาด: ' . $e->getMessage(); } } } require_once __DIR__ . '/../includes/header.php'; ?>