Skip to content
Snippets Groups Projects
submit_booking.php 3.63 KiB
Newer Older
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
<?php
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
//ini_set('display_errors', 1);
//ini_set('display_startup_errors', 1);
//error_reporting(E_ALL);
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
session_start();
include('db.php');

// 检查用户是否已登录
if (!isset($_SESSION['username'])) {
    header('Location: index.php');
    exit;
}

$username = $_SESSION['username'];

// 获取用户ID
$user_query = "SELECT id FROM users WHERE username='$username'";
$user_result = mysqli_query($conn, $user_query);
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
if (!$user_result) {
    die("查询用户ID失败: " . mysqli_error($conn));
}
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
$user = mysqli_fetch_assoc($user_result);
$user_id = $user['id'];

xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
//echo "user_id: $user_id";
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
// 输出调试信息
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
//echo $_POST['equipment_id'];
//echo $_POST['start_time'];
//echo $_POST['end_time'];
//echo $_POST['title'];
//echo "问题回答: ";
//echo $_POST['answers'];

xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
if (isset($_POST['equipment_id']) && isset($_POST['start_time']) && isset($_POST['end_time']) && isset($_POST['title'])) {
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
    $equipment_id = $_POST['equipment_id'];
    $start_time = $_POST['start_time'];
    $end_time = $_POST['end_time'];
    $title = $_POST['title'];
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
    $answers = $_POST['answers']; // 获取设备特定问题的回答

    // 输出调试信息
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
    //echo "<pre>";
    //echo "设备ID: $equipment_id\n";
    //echo "开始时间: $start_time\n";
    //echo "结束时间: $end_time\n";
    //echo "标题: $title\n";
    //echo "问题回答: ";
    //print_r($answers);
    //echo "</pre>";
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed

    // 检查该时间段是否已被预约
    $query = "SELECT * FROM bookings WHERE equipment_id = $equipment_id AND status = 'active' AND 
              ((start_time >= '$start_time' AND start_time < '$end_time') 
              OR (end_time > '$start_time' AND end_time <= '$end_time'))";
    $result = mysqli_query($conn, $query);
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
    if (!$result) {
        die("检查预约时间段失败: " . mysqli_error($conn));
    }
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed

    if (mysqli_num_rows($result) > 0) {
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
        //$_SESSION['error_message'] = "该时间段已被预约,请选择其他时间。";
        //header('Location: equipment_list.php');
            echo "该时间段已被预约,请选择其他时间。<br>";
            echo "<a href='equipment_list.php'>重新预约<br></a>";
            echo "<a href='index.php'>返回首页<br></a>";
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
        exit;
    } else {
        // 插入预约记录
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
        $insert_query = "INSERT INTO bookings (user_id, equipment_id, start_time, end_time, title, status, approved) VALUES ('$user_id', '$equipment_id', '$start_time', '$end_time', '$title', 'active', 0)";
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
        if (mysqli_query($conn, $insert_query)) {
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
            $booking_id = mysqli_insert_id($conn); // 获取插入的预约记录ID

            // 插入每个问题的回答
            foreach ($answers as $question_id => $answer) {
                $answer_query = "INSERT INTO booking_answers (booking_id, question_id, answer) VALUES ('$booking_id', '$question_id', '$answer')";
                if (!mysqli_query($conn, $answer_query)) {
                    die("插入问题回答失败: " . mysqli_error($conn));
                }
            }

xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
            //$_SESSION['success_message'] = "预约成功!等待管理员审批。";
            //header('Location: my_bookings.php');
            echo "预约成功, 等待管理员审批。继续预约?<br>";
            echo "<a href='equipment_list.php'>继续预约<br></a>";
            echo "<a href='my_bookings.php'>我的预约<br></a>";
            echo "<a href='index.php'>返回首页<br></a>";
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
            exit;
        } else {
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
            echo "预约失败,请重新预约。<br>";
            echo "<a href='equipment_list.php'>重新预约<br></a>";
            echo "<a href='index.php'>返回首页<br></a>";
xiuql@ihep.ac.cn's avatar
xiuql@ihep.ac.cn committed
            exit;
        }
    }
}