adrinator: unexpected T_VARIABLE - Was ist das?? :)

Hallo!

Ich habe eine Frage zu PHP/MySQL:

Ich habe mittels eines Formulares verschiedene Variablen übergeben und sie dann in "richtige" Variablen umgewandelt (also ohne $_Post[""]...):

$name = $_POST["titel"];
 $genre = $_POST["genre"];
 $bewertung = $_POST["bewertung"];
 $kommentar = $_POST["kommentar"];
 $standort = $_POST["standort"];

Dann habe ich die Verbindung zur Datenbank hergestellt (funktioniert), und danach kommt dann folgende Zeile:

$t = "INSERT INTO filme (titel, genre, bewertung, kommentar, standort) VALUES ('$name', '$genre', '$bewertung', '$kommentar', '$standort')";

$eintragen = mysql_query($t);

Dann habe ich es hochgeladen und es tritt folgender Fehler auf

Parse error: syntax error, unexpected T_VARIABLE in /usr/export/www/vhosts/funnetwork/hosting/filme2008/eingetragen.php on line 23

Was heißt das, bzw. wie kann ich diesen Fehler beheben?
Es müsste am ersten Teil der Zeile liegen, ´weil ich den Rest der Zeile in
die darauf folgende Zeile geschribn habe, und es wird trotzdem die gleiche Zeile angezeigt!

mfg
adrian

Ps.: Ein paar Infos, die vielleicht hilfreich sein könnten:
Ich benutze funpic und als Datenbank"verwalter" phpmyadmin (2.6.4-pl4).

  1. Hello,

    Parse error: syntax error, unexpected T_VARIABLE in /usr/export/www/vhosts/funnetwork/hosting/filme2008/eingetragen.php on line 23

    In Zeile 23 taucht eine Variable unerwartet auf. Das bedeutet dann meistens, dass in Zeile 22 etwas fehlt, ein Semikolon, eine schließende Klammer, ...

    Dein Script gefährtet außerdem Deine Datenbank.
    Lies Dir http://de.wikipedia.org/wiki/SQL_Injection durch.

    Liebe Grüße

    Tom vom Berg

    --
    Nur selber lernen macht schlau
  2. Hallo

    Ich habe mittels eines Formulares verschiedene Variablen übergeben und sie dann in "richtige" Variablen umgewandelt (also ohne $_Post[""]...):

    das ist eine denkbar schlechte Idee:

    a) verschleierst Du die Herkunft der Daten (gefährliche Eingaben)
    b) ist selbstverständlich $_POST eine wundervolle richtige Variable.

    Deswegen lass' folgende überflüssige Zeilen einfach weg.

    $name = $_POST["titel"];
    $genre = $_POST["genre"];
    $bewertung = $_POST["bewertung"];
    $kommentar = $_POST["kommentar"];
    $standort = $_POST["standort"];

    Dann habe ich die Verbindung zur Datenbank hergestellt (funktioniert), und danach kommt dann folgende Zeile:

    Und hier passiert es: Du vergißt es, die Daten gemäß dem Kontext zu behandeln. Verwende mysql_real_escape_string().

    $t = "INSERT INTO filme (titel, genre, bewertung, kommentar, standort) VALUES ('$name', '$genre', '$bewertung', '$kommentar', '$standort')";

    $eintragen = mysql_query($t);

    Dann habe ich es hochgeladen und es tritt folgender Fehler auf

    Parse error: syntax error, unexpected T_VARIABLE in /usr/export/www/vhosts/funnetwork/hosting/filme2008/eingetragen.php on line 23

    Es müsste am ersten Teil der Zeile liegen, ´weil ich den Rest der Zeile in
    die darauf folgende Zeile geschribn habe, und es wird trotzdem die gleiche Zeile angezeigt!

    Vermutlich ist der Fehler weiter oberhalb zu suchen. Bitte poste doch die ganzen 23 Zeilen :-)

    Freundliche Grüße

    Vinzenz