العودة إلى الدورة

التحقق من صحة النماذج (Form Validation) وتنظيف البيانات (Data Sanitization)

PHP: الدورة التدريبية المكثفة الكاملة من الصفر إلى الاحتراف

48. التحقق من صحة النماذج وتنظيف البيانات

لا تثق أبدًا بمدخلات المستخدم. قبل معالجة البيانات أو تخزينها، يجب عليك التحقق من صحتها (التأكد من أنها تفي بالمتطلبات) وتنظيفها (تنظيف الأحرف الضارة).

1. التحقق من الصحة (التحقق من المتطلبات)

يضمن التحقق من الصحة أن البيانات بالتنسيق والنوع والطول الصحيحين. توفر PHP دوال مدمجة لذلك.

الدالةالوصف
empty($var)تتحقق مما إذا كان المتغير فارغًا (0، نص فارغ، null، false).
filter_var($var, FILTER_VALIDATE_EMAIL)تتحقق مما إذا كانت المدخلات بتنسيق بريد إلكتروني صالح.
is_numeric($var)تتحقق مما إذا كانت المدخلات رقمًا صالحًا.

php

2. التنظيف (تنظيف المدخلات)

يزيل التنظيف الأحرف غير القانونية من مدخلات المستخدم لمنع الهجمات (مثل XSS).

الدالةالوصف
trim()تزيل المسافات البيضاء البادئة/اللاحقة.
strip_tags($str)تزيل علامات HTML و PHP من النص.
htmlspecialchars($str)تحول الأحرف الخاصة إلى كيانات HTML (HTML entities)، وهي ضرورية لـ إخراج بيانات المستخدم بأمان.
filter_var($var, FILTER_SANITIZE_STRING)تزيل أو تشفر الأحرف غير المسموح بها في النص.

php

alert('xss') Hello World"; // التنظيف عن طريق إزالة العلامات $clean_data = strip_tags($unsafe_input); echo $clean_data; // الإخراج: Hello World // عند إخراج مدخلات المستخدم إلى HTML، قم دائمًا بتهريبها $safe_output = htmlspecialchars($unsafe_input); // يعرض المتصفح النص، ولكنه لا ينفذ السكربت ?>