sql >> Base de Datos >  >> RDS >> Mysql

¿Debo mysql_real_escape_string la contraseña ingresada en el formulario de registro?

Bueno, hay un gran malentendido.

mysql_real_escape_string() no limpiar cualquier cosa. No tiene nada que ver con la seguridad en absoluto.

Esta función se usa solo para escapar de los delimitadores y nada más. Puede ayudarlo a colocar datos de cadena en una consulta SQL, eso es todo.

Entonces, cada cadena que vas a poner en consulta (entre comillas), tienes que prepararla con esta función. En todos los demás casos sería inútil o incluso perjudicial.

Por lo tanto,
fuera de este malentendido, estás cometiendo 2 errores importantes aquí:

  • está utilizando esta función, no con datos que en realidad van a la consulta
  • puede estropear su contraseña añadiéndole algunos símbolos, por lo que se vuelve inutilizable

Además, como nota al margen, tenga en cuenta que esta función siempre debe usarse junto con mysql_set_charset, o de lo contrario un "_real_" parte de esta función se vuelve inútil