Pregunta

Yo estaba tratando de entradas de higienizar a mi ingreso en PHP usando addslashes y mysql_real_escape_string. El uso de obras addslashes, pero no lo hará mysql_real_escape_string.

Este es un ejemplo de lo que me permite conectarse correctamente:

$user = addslashes($_POST['user']);<br/>
$password = addslashes($_POST['password']);

Y esto no hará lo siguiente:

$user = mysql_real_escape_string($_POST['user']);<br/>
$password = mysql_real_escape_string($_POST['password']);

Además, algunos de mis otros campos contienen apóstrofes. No se devuelve nada cuando se utiliza addslashes, desde la entrada en el PP no se escapó. Me preguntaba si se utiliza mysql_real_escape_string podría solucionar este problema, pero no sé cómo.

¿Fue útil?

Solución

Siempre uso mysql_real_escape_string en lugar de addslashes. Asegúrese de que está conectado a la base de datos antes de ejecutarlo de lo contrario se error.

Otros consejos

mysql_real_escape_string () no escapa% y _. Estos son comodines en MySQL si se combina con LIKE, GRANT, o revocar.

Y lo más importante es hacer que la entrada del usuario no confianza.

Así, htmlspecialchars uso y strip_tags para una mejor seguridad.

A veces, el usuario puede escribir ', este símbolo, pero tratar de SQL como una forma diferente y dejar que no permite insertar a las mesas, no podemos restringir al usuario de manera que usamos cadena de escape real de MySQL para evitar este tipo de error

Nota: Si decide implementar esta debe ser conectado a la base de datos de lo contrario no funcionará

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top