اسکریپت فرم تماس با عملکرد پست و ذخیره داده ها در پایگاه داده  PHP and MySQL

اسکریپت فرم تماس با عملکرد پست و ذخیره داده ها در پایگاه داده  PHP and MySQL

عنوان: راهنمای جامع اسکریپت فرم تماس با عملکرد پست و ذخیره داده‌ها در پایگاه داده با PHP و MySQL

برای اینکه یک فرم تماس کارآمد داشته باشیم که هم پیام‌ها را ایمیل کند و هم در پایگاه داده ذخیره شود، باید معماری مشخص، امنیت کافی و خطاگیری مطلوب را در نظر بگیریم. در ادامه، گام به گام توضیح می‌دهم که چطور به این هدف برسیم: طراحی دیتابیس، ساخت فرم HTML، پیاده‌سازی بخش‌های PHP برای اعتبارسنجی، ایمیل‌زنی با تابع mail و ذخیره داده‌ها با استفاده از PDO به جای mysqli، تا امنیت و قابلیت نگهداری بالاتر باشد.

طراحی دیتابیس

  • جدولی ساده برای پیام‌های فرم تماس بسازید. ستون‌های معمول: id (کلید اصلی، خود افزایشی)، نام، ایمیل، موضوع، پیام، تاریخ ایجاد، وضعیت (مثلاً “دریافت‌شده” یا “خوانده شده”).

  • نمونه طرح پایه:

  • CREATE TABLE contacts (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    email VARCHAR(150) NOT NULL,
    subject VARCHAR(200) NOT NULL,
    message TEXT NOT NULL,
    created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
    status ENUM('New','Read','Archived') DEFAULT 'New'
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
  • استفاده از utf8mb4 برای پشتیبانی از کاراکترهای فارسی و ایمکان‌پذیری کامل‌تر از نظر کاراکترها الزامی است.
  • طراحی فرم HTML

  • فرم باید method="post" و action به سمت اسکریپت پردازش مشخص هدایت شده باشد.

  • فیلدهای ضروری: نام، ایمیل، موضوع، پیام، یک csrf_token برای دفاع ابتدایی در برابر حملات CSRF، و رِنجی برای تأیید داده‌ها.

  • استفاده از attribute required برای برخی فیلدها و نمایش پیام‌های خطای کاربرپسند ضروری است.

  • مثال ساده:








  • پیاده‌سازی بخش PHP
    1) اعتبارسنجی سرور-محور

  • در ابتدای
  • ...

    🔒

    متن کامل این فایل در سایت اصلی قرار دارد

    برای مشاهده اطلاعات کامل، جزئیات دقیق و دانلود این فایل، لطفاً روی دکمه زیر کلیک کنید. تمامی محتوا به صورت کامل در لینک اصلی در دسترس شماست.

    📥 مشاهده جزئیات کامل و دانلود