$res = mysql_query("select * from Mitglieder where Name = '$ben' and Pw = '$pass'",
mysql_real_escape_string($ben),
mysql_real_escape_string($pass));
Falsche Reihenfolge. _Zuerst_ kritische Zeichen escapen, _danach_ den SQL-Query starten.
Jedoch nimmt er jetzt gar kein benutzer mehr an.
Ohne das mysql_real_escape_string() geht es wunderbar.
Voraussetzung: Auch das Einfügen des Benutzernamens und Passwort ist mit mysql_real_escape_string passiert.
Eine grundsätzliche Überlegung: Ich hoffe, du hast das Passwort nicht als Klartext in der Datenbank gespeichert, sondern als Hash?!
Gruß, Volker