La función que publiqué en ese post es alternativa. Verás,
mysql_real_escape_string() existe sólo a partir de PHP >= 4.3.0, y aunque es muy muy muy poco probable que tengas instalada una versión más antigua que esa, podría darse el caso. En todo caso, la finalidad de esta función es adaptar la consulta l tipo de contenido, escapando los caracteres
potencialmente peligroso y colocando entre comillas simples (') los valores no numéricos. Su uso es:
Código PHP:
$id = 2432;
$password = "abcd'ef";
$estado = null;
$sql = sprintf("SELECT * FROM tabla WHERE id=%s AND password=%s AND estado=%s",
mysql_escape($id),
mysql_escape($password),
mysql_escape($estado));
echo $sql; //SELECT * FROM tabla WHERE id=2342 AND password='abcd\'ef' AND estado=''
Pero como te digo, yo uso esa función simplemente por comodidad. Pero no hay ninguna diferencia entre usar tan solo mysql_real_escape_string() a secas.
Un saludo,