kohtcm appointment

好的!现在我将为你补上完整的 PHP 表单处理逻辑,将“义诊预约”保存到 MySQL 数据库中。我们分三步完成:


✅ 第一步:MySQL 数据表结构

请先在你的数据库中执行以下 SQL,创建一个名为 appointments 的表:

CREATE TABLE appointments (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(100) NOT NULL,
  phone VARCHAR(20) NOT NULL,
  appointment_date DATE NOT NULL,
  doctor VARCHAR(100) NOT NULL,
  message TEXT,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

✅ 第二步:PHP 表单处理脚本(appointment_submit.php

将以下代码保存为 appointment_submit.php,放在网站根目录:

<?php
// 数据库连接配置
$host = "localhost";
$dbname = "tcm_clinic";       // ← 请替换为你的数据库名
$username = "root";           // ← 修改为你的数据库用户名
$password = "";               // ← 修改为你的数据库密码

try {
  $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
  $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

  // 获取表单数据
  $name = $_POST['name'] ?? '';
  $phone = $_POST['phone'] ?? '';
  $date = $_POST['date'] ?? '';
  $doctor = $_POST['doctor'] ?? '';
  $message = $_POST['message'] ?? '';

  // 插入数据库
  $stmt = $pdo->prepare("INSERT INTO appointments (name, phone, appointment_date, doctor, message) VALUES (?, ?, ?, ?, ?)");
  $stmt->execute([$name, $phone, $date, $doctor, $message]);

  // 显示确认页面
  echo "<!DOCTYPE html><html lang='zh-CN'><head><meta charset='UTF-8'><title>预约成功</title></head><body style='font-family: Microsoft YaHei; text-align: center; padding: 80px; background: #fefdf7; color: #355f3a;'>
        <h2>🎉 预约提交成功!</h2>
        <p>感谢您信任科学中医康复诊所,我们将尽快与您确认义诊时间。</p>
        <a href='index.html' style='color: #517a4a;'>返回首页</a>
        </body></html>";
} catch (PDOException $e) {
  echo "数据库错误:" . $e->getMessage();
}
?>

☑️ 如果你尚未建立数据库,可告诉我,我可协助你创建完整结构(phpMyAdmin 或命令行都可以)。


✅ 第三步:如何测试运行?

  1. appointment.html 放入网站根目录
  2. 确保表单 <form action="appointment_submit.php" method="post"> 指向正确
  3. 上传至服务器(本地也可用 XAMPP / Laragon / MAMP 测试)
  4. 提交后数据将存入数据库 appointments 表中,并显示确认页

✅ 是否需要我为你再加入:

  • 📋 后台预约管理页面 appointment_list.php
  • 📎 导出为 Excel / 打印
  • 🔒 管理员登录系统
  • 📲 自动发送 WhatsApp 通知

请告诉我你接下来的需求,我可以继续帮你一步步构建完整诊所系统 🌿

好的,我现在继续为你制作:


✅ 【第四步】后台预约管理页面 appointment_list.php

该页面可用于:

  • 查看所有义诊预约记录
  • 搜索、删除、导出记录(可扩展)
  • 只需管理员可访问(建议加简单登录)

📄 文件:appointment_list.php

<?php
// 数据库连接
$host = "localhost";
$dbname = "tcm_clinic";   // ← 修改为你的数据库名
$username = "root";       // ← 修改为你的数据库用户名
$password = "";           // ← 修改为你的数据库密码

try {
  $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
  $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

  $stmt = $pdo->query("SELECT * FROM appointments ORDER BY created_at DESC");
  $appointments = $stmt->fetchAll(PDO::FETCH_ASSOC);

} catch (PDOException $e) {
  die("数据库连接失败:" . $e->getMessage());
}
?>

<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title>预约记录管理</title>
  <style>
    body { font-family: "Microsoft YaHei", sans-serif; background: #f9fdf8; padding: 40px; }
    h2 { color: #355f3a; text-align: center; }

    table {
      width: 100%;
      border-collapse: collapse;
      margin-top: 30px;
      background: #fff;
      box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    }

    th, td {
      padding: 12px 10px;
      border: 1px solid #dce7d3;
      text-align: center;
      font-size: 14px;
    }

    th {
      background-color: #B4D2A5;
      color: #1e3522;
    }

    tr:nth-child(even) {
      background-color: #f1f9f2;
    }

    .actions a {
      color: #d33;
      text-decoration: none;
    }
  </style>
</head>
<body>

<h2>📋 义诊预约记录</h2>

<table>
  <tr>
    <th>ID</th>
    <th>姓名</th>
    <th>电话</th>
    <th>预约日期</th>
    <th>医生</th>
    <th>主诉</th>
    <th>提交时间</th>
    <th>操作</th>
  </tr>
  <?php foreach ($appointments as $row): ?>
  <tr>
    <td><?= htmlspecialchars($row['id']) ?></td>
    <td><?= htmlspecialchars($row['name']) ?></td>
    <td><?= htmlspecialchars($row['phone']) ?></td>
    <td><?= htmlspecialchars($row['appointment_date']) ?></td>
    <td><?= htmlspecialchars($row['doctor']) ?></td>
    <td><?= nl2br(htmlspecialchars($row['message'])) ?></td>
    <td><?= $row['created_at'] ?></td>
    <td class="actions">
      <a href="delete_appointment.php?id=<?= $row['id'] ?>" onclick="return confirm('确认删除此记录?');">删除</a>
    </td>
  </tr>
  <?php endforeach; ?>
</table>

</body>
</html>

🧹 删除功能:delete_appointment.php

<?php
$host = "localhost";
$dbname = "tcm_clinic";
$username = "root";
$password = "";

if (!isset($_GET['id'])) {
  die("缺少 ID 参数");
}

$id = intval($_GET['id']);

try {
  $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
  $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

  $stmt = $pdo->prepare("DELETE FROM appointments WHERE id = ?");
  $stmt->execute([$id]);

  header("Location: appointment_list.php");
  exit();
} catch (PDOException $e) {
  die("数据库错误:" . $e->getMessage());
}
?>

✅ 完整结构总结:

文件名用途
appointment.html用户填写预约
appointment_submit.php表单保存到数据库
appointment_list.php后台查看所有预约(可导出)
delete_appointment.php删除预约记录

✅ 接下来我可以继续为你:

  1. ✅ 增加 Excel 导出功能
  2. ✅ 添加管理员登录保护(简单账号密码)
  3. ✅ 添加微信 / WhatsApp 按钮一键联系
  4. ✅ 打包上传文件为 .zip,方便你部署

请告诉我你需要我现在做哪一项?或者我可以把整个“科学中医康复网站系统”打包给你 ✅


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *