لا تثق أبدًا بالبيانات التي يرسلها المستخدم. فقد يحتوي حقل النموذج شيفرة خبيثة. وهناك ثلاثة ردود فعل تحمي الجوهري.
1. الحماية من حقن SQL
لا تُدرج قيمة قادمة من النموذج مباشرةً في استعلام. استعمل الاستعلامات المهيَّأة (PDO): فتُعامَل القيمة بوصفها بيانًا بسيطًا لا شيفرة SQL.
2. الحماية من ثغرات XSS
قبل عرض بيان أدخله المستخدم، مرّره عبر htmlspecialchars(). فذلك يحوّل الوسوم إلى نصّ غير ضارّ ويمنع حقن النصوص البرمجية.
3. التحقّق والتصفية
- تحقّق من الصيغة المتوقّعة (هل يشبه البريد الإلكتروني بريدًا إلكترونيًا فعلًا؟).
- استعمل filter_var() للتحقّق أو للتنظيف.
- راقب طول البيانات ونوعها.
للتذكّر: الاستعلامات المهيَّأة ضدّ حقن SQL، وhtmlspecialchars() ضدّ XSS. والقاعدة الذهبية: لا تثق بالمدخلات أبدًا.