Reichen vorbereitete PDO-Anweisungen aus, um SQL-Injection zu verhindern?

Angenommen, ich habe folgenden Code:

$dbh = new PDO("blahblah");

$stmt = $dbh->prepare('SELECT * FROM users where username = :username');
$stmt->execute( array(':username' => $_REQUEST['username']) );

In der PDO-Dokumentation heißt es:

Die Parameter für vorbereitete Anweisungen müssen nicht in Anführungszeichen gesetzt werden. Der Fahrer erledigt das für Sie.

Ist das wirklich alles, was ich tun muss, um SQL-Injektionen zu vermeiden? Ist es wirklich so einfach?

Sie können MySQL annehmen, wenn es einen Unterschied macht. Außerdem bin ich wirklich nur neugierig auf die Verwendung von vorbereiteten Anweisungen gegen SQL-Injection. In diesem Zusammenhang interessieren mich XSS oder andere mögliche Schwachstellen nicht.

Antworten auf die Frage(7)

Ihre Antwort auf die Frage