Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Soll ich einen erwarteten Integer-Wert mit mysql_real_escape_string maskieren oder kann ich einfach (int)$expectedinteger verwenden

mysql_real_scape_string ist für STRINGS . es wird eine Ganzzahl nicht 'sicher' für die Verwendung machen. zB

$safe = mysql_real_escape_string($_GET['page']);

wird NICHTS tun, wo

$_GET['page'] = "0 = 0";

weil dort keine SQL-Metazeichen enthalten sind. Ihre Abfrage würde in etwa so enden:

SELECT ... WHERE somefield = 0 = 0

Wenn Sie jedoch intval() ausführen, wird dieser 0=0 konvertiert in eine einfache 0 .