sirve real_escape_string que para mysql_real_escape_string injection escape alternative php mysql mysqli prepared-statement sanitize

php - que - pdo real_escape_string



¿Es mysql_real_escape_string() necesario cuando se usan declaraciones preparadas? (1)

No, las consultas preparadas (cuando se usan correctamente) garantizarán que los datos se escapen correctamente para realizar consultas seguras. Los estás utilizando correctamente, solo necesitas cambiar una cosita. Porque estás usando el ''?'' marcador de posición, es mejor pasar params a través del método de ejecución.

$sql->execute(array($consulta));

Solo tenga cuidado si lo envía a su página, ya que el saneamiento de la base de datos no significa que sea seguro para mostrarlo en HTML, así que ejecute htmlspecialchars () en él también.

Para esta consulta, ¿es necesario usar mysql_real_escape_string ?

¿Alguna mejora o la consulta está bien?

$consulta = $_REQUEST["term"]."%"; ($sql = $db->prepare(''select location from location_job where location like ?'')); $sql->bind_param(''s'', $consulta); $sql->execute(); $sql->bind_result($location); $data = array(); while ($sql->fetch()) { $data[] = array(''label'' => $location); }

La velocidad de consulta es importante en este caso.