Örnek kod:
$email = "" . $_POST['email'];
$con = mysql_connect("localhost","user","pass")
or die('Could not connect to database.');
mysql_select_db("face", $con);
// Sanitization step
$sanitemail = mysql_real_escape_string($email);
// Is this safe?
mysql_query("INSERT INTO landing_oct_2010 (email) VALUES ('$sanitemail');");
Ben olsun, bu basit bir görev için, eğer bilmek istiyorum sadece kullanarak mysql_real_escape_string en az enjeksiyon tarzı SQL saldırıları önlemek için tam olarak yeterli değildir, veya başka bir tedbir varsa ben almalıdır.
Ben bu örnekteki e-posta adreslerini toplamaya olduğumu gerçektir tesadüfi değildir. Ben e-posta adresleri ile çalışıyorum biliyorum, ben sadece bir regex ve bazı DNS kontrolleri atmak istiyorum ve orada ben de doğrulama inşa ederdim. Ancak, eldeki genel bir sorun üzerinde odaklanmak istiyorum: tek sanitasyon fonksiyonu yeterli mi?