connect_error) {
die("Database Connection Failed: " . $conn->connect_error);
}
$conn->set_charset("utf8mb4");
// Auto-create table if not exists
$sql_table = "CREATE TABLE IF NOT EXISTS `Reservation` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`fullname` VARCHAR(100) NOT NULL,
`email` VARCHAR(100) NOT NULL,
`phone` VARCHAR(30) NOT NULL,
`room_type` VARCHAR(50) NOT NULL,
`guests` VARCHAR(10) NOT NULL,
`check_in` DATE NOT NULL,
`check_out` DATE NOT NULL,
`requests` TEXT,
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;";
$conn->query($sql_table);
// ==========================================
// FORM PROCESSING
// ==========================================
$errors = [];
$success_msg = '';
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$fullname = filter_var(trim($_POST['fullname'] ?? ''), FILTER_SANITIZE_SPECIAL_CHARS);
$email = filter_var(trim($_POST['email'] ?? ''), FILTER_SANITIZE_EMAIL);
$phone = filter_var(trim($_POST['phone'] ?? ''), FILTER_SANITIZE_SPECIAL_CHARS);
$room_type = 'Deluxe Room'; // Enforce Deluxe Room selection
$guests = filter_var(trim($_POST['guests'] ?? ''), FILTER_SANITIZE_NUMBER_INT);
$check_in = filter_var(trim($_POST['check_in'] ?? ''), FILTER_SANITIZE_SPECIAL_CHARS);
$check_out = filter_var(trim($_POST['check_out'] ?? ''), FILTER_SANITIZE_SPECIAL_CHARS);
$requests = filter_var(trim($_POST['requests'] ?? ''), FILTER_SANITIZE_SPECIAL_CHARS);
if (empty($fullname)) { $errors[] = "Full Name is required."; }
if (empty($email) || !filter_var($email, FILTER_VALIDATE_EMAIL)) { $errors[] = "A valid Email address is required."; }
if (empty($phone)) { $errors[] = "Phone number is required."; }
if (empty($check_in) || empty($check_out)) { $errors[] = "Check-in and Check-out dates are required."; }
if (strtotime($check_in) >= strtotime($check_out)) { $errors[] = "Check-out date must be after Check-in date."; }
if (empty($errors)) {
$stmt = $conn->prepare("INSERT INTO `Reservation` (fullname, email, phone, room_type, guests, check_in, check_out, requests) VALUES (?, ?, ?, ?, ?, ?, ?, ?)");
$stmt->bind_param("ssssssss", $fullname, $email, $phone, $room_type, $guests, $check_in, $check_out, $requests);
if ($stmt->execute()) {
$success_msg = "Thank you, " . htmlspecialchars($fullname) . ". Your reservation for the Deluxe Room has been successfully submitted!";
$_POST = array();
} else {
$errors[] = "Database insertion failed: " . $stmt->error;
}
$stmt->close();
}
}
?>
Deluxe Room - Tateno Royal Hotel
Tateno Royal Hotel
Deluxe Room Details
$45 / Night
Deluxe Room
Deluxe Rooms are perfect for solo travelers or couples. These rooms are equipped with a comfortable double bed and all the necessary amenities to make your stay enjoyable.