Hi!
$benutzername=$_POST["benutzername"];
$passwort=$_POST["passwort"];
Egal, wie häufig man dieses Umkopieren sieht, es ist und bleibt Unfug. Es erhöht nur die Komplexität des Script durch neue Variablen und verschleiert deren Herkunft.
$verbindung=mysql_connect("localhost","Vesta","vesta")
or die("Keine Verbindung möglich. Benutzername oder Passwort falsch");
or die() ist auch keine angemessene Fehlermeldung. Schau mal mit den Augen eines deiner Besucher, was passiert, wenn die Datenbankverbindung nicht zustande kommt. Er bekommt die Meldung "Benutzername oder Passwort falsch" - als Antwort auf ein Formular, in das er einen Benutzernamen und ein Passwort eintragen soll. Außer dieser Verwirrung ist es keine Art, ein Script einfach sterben zu lassen, wenn ein Fehler auftritt. Besser ist es, Scripte so zu strukturieren, dass sie auch bei Fehlern ordentlich bis zu ihrem Ende durchlaufen und eine vollständige HTML-Seite als Ergebnis liefern. Abhängigkeiten (von Fehlern und anderen Bedingungen) löst man mit Kontrollstrukturen (if-else).
Parse error: syntax error, unexpected T_STRING on line 19
Du öffnest einen String und schließt ihn nicht. In Zeile 19 folgt ein weiteres ", das aus deiner Sicht einen Stringanfang darstellt, das jedoch PHP als das Ende des nicht geschlossenen Strings ansieht. Der aus deiner Sicht Stringinhalt ergibt aus PHP-Sicht ungültigen Code.
Lo!