التحقق من المدخلات (Validation)

لا تثق أبداً بمدخلات المستخدم

أهم قاعدة في أمن الويب هي أن بيانات المستخدم قد تكون خاطئة أو خبيثة. يجب دائماً تنظيف والتحقق من البيانات قبل استخدامها.

1. تنظيف النصوص (Sanitization)

نستخدم دالة htmlspecialchars() لتحويل الرموز الخاصة (مثل <) إلى نصوص عادية، مما يمنع هجمات XSS.

$name = htmlspecialchars($_POST['name']);

2. التحقق من الحقول الفارغة

نستخدم دالة empty() للتأكد من أن المستخدم قام بتعبئة الحقل.

<?php
  if (empty($_POST["username"])) {
    echo "خطأ: اسم المستخدم مطلوب!";
  } else {
    $user = htmlspecialchars($_POST["username"]);
  }
?>

3. التحقق من نوع البيانات (Filters)

توفر PHP فلاتر جاهزة للتحقق من البريد الإلكتروني أو الأرقام:

<?php
  $email = $_POST["email"];
  if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo "البريد الإلكتروني غير صحيح!";
  }
?>
نصيحة أمنية

التحقق في جهة العميل (بواسطة HTML required أو JavaScript) جيد للمستخدم، لكن التحقق في جهة الخادم (بواسطة PHP) هو الوحيد الذي يحمي موقعك فعلياً.

المحرر الذكي

اكتب الكود وشاهد النتيجة فوراً

جرب الآن مجاناً
قناة ديف عربي

تابع أحدث الدروس والتحديثات مباشرة على واتساب

انضم الآن