Wie kann ich die SQL-Injection für diese Abfrage verhindern?
Ich verwende Yii 1, ich möchte die folgende Abfrage erstellen:
$a = Model::model()->findAllBySql(
'SELECT * FROM table WHERE name like "%'.$_GET['name'].'%"'
);
Um die SQL-Injection zu verhindern, habe ich folgendes geschrieben:
$a = Model::model()->findAllBySql(
'SELECT * FROM table WHERE name like "%:name%"',
array("name"=>$_GET['name'])
);
aber es wurden keine Daten zurückgegeben. Gibt es irgendwelche Fehler in dieser Abfrage?