Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Soll ich mysql_real_escape_string das im Registrierungsformular eingegebene Passwort eingeben?

Nun, es gibt ein großes Missverständnis.

mysql_real_escape_string() nicht rein alles. Es hat überhaupt nichts mit Sicherheit zu tun.

Diese Funktion wird nur verwendet, um Trennzeichen zu maskieren und nicht mehr. Es kann Ihnen helfen, Zeichenfolgendaten in eine SQL-Abfrage einzufügen - das ist alles.

Sie müssen also jeden String, den Sie in eine Abfrage stellen (indem Sie ihn in Anführungszeichen setzen), mit dieser Funktion vorbereiten. In allen anderen Fällen wäre es nutzlos oder sogar schädlich.


Ausgehend von diesem Missverständnis begehen Sie hier also zwei große Fehler:

  • Sie verwenden diese Funktion nicht mit Daten, die tatsächlich zur Abfrage gehen
  • Sie können Ihr Passwort verderben, indem Sie ihm einige Symbole hinzufügen, sodass es unbrauchbar wird

Als Nebenbemerkung beachten Sie bitte auch, dass diese Funktion immer in Verbindung mit mysql_set_charset oder andernfalls einem "_real_" verwendet werden sollte ein Teil dieser Funktion unbrauchbar wird