Antwort an „Felix Riesterer“ verfassen

Lieber Yadgar,

  $stichwort = $_POST["stichwort"];
  $stichwort = mysqli_real_escape_string($db, $stichwort);
  $kategorie = $_POST["kategorie"];
  $kategorie = mysqli_real_escape_string($db, $kategorie);

das sind Beispiele aus der Hölle. Das willst Du später so nicht mehr haben. Die Variable $stichwort ist ein String, dem man nicht ansieht, woher sein Wert kommt und wie er für welche Zwecke behandelt worden ist. Besser so:

$sql = 'SELECT * FROM ...';
$params = [
  'search' => mysqli_escape_string($_POST['stichwort'])
];

$db->get($sql, $params);

So sieht man, dass da ein POST-Wert konkret für DB-Anfragen vorbehandelt wird. Der Inhalt in $_POST ist prinzipiell nicht vertrauenswürdig, das sieht man dem Variablennamen schon an. Das sieht man einer Variable $stichwort nicht an. Man sieht ihr auch nicht an, dass da (vielleicht oder auch nicht) mysqli_escape_string() drübergefahren ist.

Ich glaube, ab einem bestimmten Alter sollte man das Programmieren bleiben lassen...

Man darf auch im hohen Alter noch dazu lernen. Und Dein Alter sollte so hoch nun doch noch nicht sein. ;-)

Liebe Grüße

Felix Riesterer

freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar

Ihre Identität in einem Cookie zu speichern erlaubt es Ihnen, Ihre Beiträge zu editieren. Außerdem müssen Sie dann bei neuen Beiträgen nicht mehr die Felder Name, E-Mail und Homepage ausfüllen.

abbrechen