ماهي الطرق التي تستخدمونها في PHP لتنظيف النصوص والتأكد من عدم وجود SQL Injection أو XSS ؟
أنا أستخدم خليطاً مابين mysql_escape_string بالإضافة إلى str_replace للتخلص من الرموز التي قد تسبب مشاكل.
أحسن الحلول هو إستعمال "PDO" أسرع و آمن ,
و هذا مثال بسيط :
try {
$DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$DBH->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$stmt = $DBH->prepare("INSERT INTO TABLE (name, value) VALUES (:name, :value)");
$stmt->bindParam(':name', $name);
$stmt->bindParam(':value', $value);
}
catch(PDOException $e) {
echo "ERROR.";
file_put_contents('PDOErrors.txt', $e->getMessage(), FILE_APPEND);
}
التعليقات