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

Ist dies eine sichere/starke Eingabebereinigungsfunktion?

Ich würde sagen, das ist zu pauschal. Es kann sicher für viele Anwendungen, aber es würde Saiten oft unerwünschte Nebeneffekte geben. Nicht jeder String sollte so maskiert werden.

  • mysql_real_escape_string() sollte nur innerhalb von SQL-Abfragen verwendet werden. Besser noch, Parameter mit PDO binden.
  • Warum sollten Sie Tags löschen und Entitäten codieren, bevor Sie sie in eine Datenbank einfügen? Vielleicht auf dem Weg nach draußen.
  • Für XSS-Prävention htmlspecialchars() ist mehr von deinem Freund. Geben Sie den Zeichensatz als Argument an.

Also würde ich mysql_real_escape_string() verwenden für Abfragen und htmlspecialchars() zum Echoen von vom Benutzer übermittelten Zeichenfolgen. Es gibt auch noch viel mehr zu wissen. Lesen Sie weiter .