1. addslashes($string): Verwenden Sie Backslashes, um Sonderzeichen in der Zeichenfolge ' "
$username=addslashes($username);
2. mysql_escape_string($string): Verwenden Sie einen Backslash, um Sonderzeichen in der Zeichenfolge für mysql_query() zu maskieren.
$username=mysql_escape_string($username);
3 string): Escape-Sonderzeichen in der in SQL-Anweisungen verwendeten Zeichenfolge. Unter Berücksichtigung des aktuellen Zeichensatzes der Verbindung müssen Sie sicherstellen, dass der aktuelle Verbindungsstatus verwendet werden kann, bevor Sie diese Funktion verwenden, andernfalls wird sie gemeldet eine Warnung. Es gibt zwei Optionen, um % und _
$username=mysql_real_escape_string($username);
1. Verwenden Sie PDO
$stmt = $pdo->prepare('SELECT * FROM user WHERE name = :name'); $stmt->execute(array(':name' => $name)); foreach ($stmt as $row) { // do something with $row }
mysqli
$stmt = $dbConnection->prepare('SELECT * FROM user WHERE name = ?'); $stmt->bind_param('s', $name); $stmt->execute(); $result = $stmt->get_result(); while ($row = $result->fetch_assoc()) { // do something with $row }
PHP-Chinese-Website!
Das obige ist der detaillierte Inhalt vonDrei PHP-Funktionen und zwei Optionen zur Verhinderung von SQL-Injection. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!