Benutzer-Werkzeuge

Webseiten-Werkzeuge


bindparam

gebundene Parameter (bindParam)

Ab der PHP-Version 5.1.0. stehen die gebundenen Parameter auch für PDO-Objekte zur Verfügung.

Um potentielle SQL-Injection-Angriffe zu verhindern, sollten ausschließlich gebundene Parameter verwendet werden. In einer SQL-Anweisung eingefügten Variablen aus z. B. einem GET-Parameter können problemlos gehackt werden.

Beispiel:

<?php
	$pdo = new PDO( "mysql:host=" . DB_HOST . ";dbname=" . DB_DATABASE, DB_USER, DB_PASSWORD );
	$stmt = $pdo->prepare( 'SELECT Nachname FROM Benutzer WHERE id = :id' );
	$stmt->bindParam( ':id', $_GET['id'], PDO::PARAM_INT );
	$stmt->execute();
?>

Als Datentypen stehen die folgenden vordefinierten Konstanten (im Beispiel oben = PDO::PARAM_INT) zur Verfügung:

Konstante Datentyp
PDO::PARAM_BOOL Boolean
PDO::PARAM_INT Integer
PDO::PARAM_STR Char, Varchar und alle anderen String-Typen
PDO:PARAM_LOB Large object (LOB)
bindparam.txt · Zuletzt geändert: 2015/12/19 00:00 (Externe Bearbeitung)