2012-04-30 21 views

Respuesta

11

yo creo mysql_real_escape_string() mysqli_real_escape_string() es la mejor manera de escapar de los datos de entrada

editar Más tarde, ya que todo está en desuso ahora y la información debe ser válido:

Trate de usar PDO como las declaraciones preparadas son mucho más seguras o mysqli_*() functions si realmente necesita mantener el código anterior algo actualizado.

+9

Yo diría que pasar sus cadenas como parámetros a las declaraciones preparadas es más seguro. – eggyal

+0

Actualmente también lo uso para ellos – frops

+0

Estoy de acuerdo con eggyal. – Menztrual

4
validMySQL($var) { 
$var=stripslashes($var); 
$var=htmlentities($var); 
$var=strip_tags($var); 
$var=mysql_real_escape_string($var); 
return $var 
} 

El código anterior ayuda a desinfectar datos más válidos, sólo recuerde que usted tiene que ser conectado a la base de datos MySQL para mysql_real_escape_string para trabajar ...

3

actualmente la forma más preferida para asegurar su seguridad es declaraciones preparadas.

ejemplo:

$preparedStatement = $db->prepare('SELECT * FROM memebers WHERE username = :username'); 

$preparedStatement->execute(array(':username' => $username)); 

$rows = $preparedStatement->fetchAll(); 

entonces cuando se muestran sus datos utilizan htmlspecialchars()

Cuestiones relacionadas