Heim  >  Artikel  >  Backend-Entwicklung  >  Drei PHP-Funktionen und zwei Optionen zur Verhinderung von SQL-Injection

Drei PHP-Funktionen und zwei Optionen zur Verhinderung von SQL-Injection

angryTom
angryTomnach vorne
2019-10-16 10:23:392739Durchsuche

Drei PHP-Funktionen und zwei Optionen zur Verhinderung von SQL-Injection

Drei Funktionen:

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);

nicht zu umgehen:

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
}

Weitere PHP-bezogene Kenntnisse finden Sie auf der

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:www.phplaozhang.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen