mysql_real_scape_string è per STRINGS . non renderà un numero intero "sicuro" per l'uso. es.
$safe = mysql_real_escape_string($_GET['page']);
non farà NIENTE dove
$_GET['page'] = "0 = 0";
perché non ci sono metacaratteri SQL lì. la tua domanda finirebbe in qualcosa di simile a
SELECT ... WHERE somefield = 0 = 0
Tuttavia, fare intval() convertirà quel 0=0
in un semplice 0
.