نوبت دهی کلینیک با استفاده از PHP و SQLite3
نوبت دهی کلینیک یکی از نیازهای اساسی در مدیریت خدمات درمانی است. با استفاده از PHP و SQLite3 میتوان یک سیستم نوبت دهی ساده و کارآمد طراحی کرد. در ادامه، مراحل ایجاد این سیستم را بررسی خواهیم کرد.
۱. راهاندازی محیط
ابتدا به یک سرور محلی مثل XAMPP یا WAMP نیاز دارید که PHP و SQLite3 را پشتیبانی کند. پس از نصب، یک پروژه جدید ایجاد کنید.
۲. ایجاد پایگاه داده
با استفاده از SQLite3 میتوانید یک پایگاه داده برای ذخیرهسازی اطلاعات نوبتها ایجاد کنید.
```php
<?php
$db = new SQLite3('clinic.db');
$db->exec("CREATE TABLE IF NOT EXISTS appointments (
id INTEGER PRIMARY KEY AUTOINCREMENT,
patient_name TEXT NOT NULL,
appointment_date TEXT NOT NULL,
doctor TEXT NOT NULL
)");
?>
```
۳. فرم نوبت دهی
یک فرم HTML ساده برای دریافت اطلاعات بیمار و تاریخ نوبت طراحی کنید.
```html
<form action="book_appointment.php" method="POST">
نام بیمار: <input type="text" name="patient_name" required>
تاریخ نوبت: <input type="date" name="appointment_date" required>
پزشک: <input type="text" name="doctor" required>
<input type="submit" value="رزرو نوبت">
</form>
```
۴. پردازش فرم
در فایل `book_appointment.php`، اطلاعات فرم را پردازش و در پایگاه داده ذخیره کنید.
```php
<?php
$db = new SQLite3('clinic.db');
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$patient_name = $_POST['patient_name'];
$appointment_date = $_POST['appointment_date'];
$doctor = $_POST['doctor'];
$stmt = $db->prepare("INSERT INTO appointments (patient_name, appointment_date, doctor) VALUES (:patient_name, :appointment_date, :doctor)");
$stmt->bindValue(':patient_name', $patient_name, SQLITE3_TEXT);
$stmt->bindValue(':appointment_date', $appointment_date, SQLITE3_TEXT);
$stmt->bindValue(':doctor', $doctor, SQLITE3_TEXT);
$stmt->execute();
echo "نوبت با موفقیت رزرو شد!";
}
?>
```
۵. نمایش نوبتها
برای نمایش نوبتهای رزرو شده، میتوانید یک صفحه جدید ایجاد کنید.
```php
<?php
$db = new SQLite3('clinic.db');
$result = $db->query('SELECT * FROM appointments');
while ($row = $result->fetchArray(SQLITE3_ASSOC)) {
echo "نام بیمار: " . $row['patient_name'] . " - تاریخ نوبت: " . $row['appointment_date'] . " - پزشک: " . $row['doctor'] . "<br>";
}
?>
```
نتیجهگیری
این سیستم نوبت دهی با PHP و SQLite3 بسیار ساده است، اما میتوان آن را با امکانات بیشتری مثل احراز هویت، ارسال پیامک و یادآوری نوبت، گسترش داد. با این رویکرد، میتوانید کارایی و راحتی بیشتری را برای بیماران و کادر درمانی فراهم کنید.