dedlfix: Allgemein: Wie PHP&MySQL sicher machen?

Beitrag lesen

echo $begrüßung;

was ist aber, wenn ich die daten so eintrage:

$pass = htmlspecialchars($_POST['passwort']);

$query = mysql_db_query(***,"insert into user (passwort) values ('$pass')");

  
Welche Zeichen behandelt htmlspecialchars() in der Form, in der du es verwendest? < > & "  
Was ist mit ' ? Was ist, wenn Passwörter 8 Zeichen lang sein sollen, das Feld in der DB genau 8 Zeichen aufnehmen kann und du htmlspecialchars() auf einen String mit einem " anwendest? Dann bleiben noch genau zwei Zeichen übrig, der Rest wird abgeschnitten.  
  

> oder so abfrage:  
> ~~~php

$pass = htmlspecialchars($_POST['passwort']);  

> $query = mysql_db_query(***,"select * from user where passwort = 'pass'");

müsste der interpreter dann den string nicht unweigerlich als 1 string sehen? wo genau kann es da probleme geben? wie kann man sich da falsch einschleusen?

' OR 1 OR '

ergibt dann select * from user where passwort = '' OR 1 OR ''

echo "$verabschiedung $name";