Benny: Parse error:

Parse error: parse error, unexpected T_VARIABLE in ....newthread_script.php on line 4

weiß jemand warum??

so sieht das formular aus:
<body>
 <form action="newthread_script.php" method="POST">
  <input type="hidden" name="fid" value="<?php $fid ?>" border="0"> Titel des Beitrages: <input type="text" name="topic" size="50"><br>
  Name des Autors: <input type="text" name="name" size="50"><br>
  Nachricht: <textarea name="nachricht" rows="10" cols="55"></textarea><br>
  <input type="submit">
 </form>
</body>

hier die newthread_script.php datei
<?
include("dbconnect.php");
//Variablen auf andere Deklarieren (ist einfacher zu schreiben)
$nachricht  =  $HTTP_POST_VARS ["nachricht"];
$topic  =  $HTTP_POST_VARS ["topic"];
$name  =  $HTTP_POST_VARS ["name"];
$fid  =  $HTTP_POST_VARS ["fid"];

//schreiben in DB (nur Thread an sich)
 mysql_query ("insert into threads set fid='$fid', topic='$topic', created=now()" );

//nun brauchen wir noch die neue ID des Threads, um sie in answers
// einzutragen
$res  =   mysql_query ("select max(id) AS max from threads" );
$row  =   mysql_fetch_array ($res );
$thread_id  =  $row ["max" ];

//so nun schreiben wir den eigentlichen Beitrag in die DB
 mysql_query ("insert into answers set text='$text', topic='$topic', user='$name', fid='$fid', tid='$thread_id', created=now()" );

//Weiterleitung zu der Auflistung der Threads im
//bereits ausgewählten Forum
 header ("Location: showthreads.php?fid=" .$fid );
?>

thx

Benny

  1. Halihallo Benny

    Parse error: parse error, unexpected T_VARIABLE in ....newthread_script.php on line 4

    Ohne genauer darauf einzugehen:
    Du scheinst Spaces mächtig zu lieben, diese Liebe wird jedoch vom Parser nicht
    notgedrungen geteilt.

    also:

    statt:

    $name  =  $HTTP_POST_VARS ["name"];

    mach

    $name  =  $HTTP_POST_VARS["name"];

    und statt

    header ("Location: showthreads.php?fid=" .$fid );

    mach

    header("Location: showthreads.php?fid=" .$fid );

    als Beispiele... Ich weiss nicht, was der PHP-Interpreter toleriert und was nicht,
    aber irgendwo ist der Hund in der Syntax begraben...

    Viele Grüsse

    Philipp

    --
    RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
    Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.
  2. Hast du schon mal in Zeile 4 und folgenden statt " ' versucht. Ist jetzt nur mal so'ne Idee
    Elessar

  3. Parse error: parse error, unexpected T_VARIABLE in ....newthread_script.php on line 4

    weiß jemand warum??

    Der Fehler ist bei dieser Meldung oft eine Zeile weiter oben.
    Mal schauen:

    hier die newthread_script.php datei
    <?
    include("dbconnect.php");
    //Variablen auf andere Deklarieren (ist einfacher zu schreiben)
    $nachricht  =  $HTTP_POST_VARS ["nachricht"];

    ^^
    Liegt's vielleicht einfach an diesem Leerschlag?

    Den Rest Deines Codes habe ich nicht angeschaut.

    mfg
    Thomas

  4. Moin,

    include("dbconnect.php");

    Was steht da drin?

    --
    Henryk Plötz
    Grüße aus Berlin
    ~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
    ~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~
    1. Hallo,

      include("dbconnect.php");

      Was steht da drin?

      Glaubst Du wirklich, er postet sein Passwort? ;-)

      Im Ernst:

      Parse error: parse error, unexpected T_VARIABLE in newthread_script.php on line 4

      ^^^^^^

      hier die newthread_script.php datei
      <?
      include("dbconnect.php");

      Soweit ich mich erinnere, stimmt auch bei Includes
      die Angabe in der Fehlermeldung, in welcher _Datei_ der Fehler sei.
      Oder irre ich mich da?

      mfg
      Thomas

      1. Moin,

        Soweit ich mich erinnere, stimmt auch bei Includes
        die Angabe in der Fehlermeldung, in welcher _Datei_ der Fehler sei.
        Oder irre ich mich da?

        Ich bin mir nicht sicher ob includes völlig unabhängig geparst werden oder es sein kann dass er in der includierten Datei etwas angefangen hat und der Parser jetzt die Fortsetzung -- undzwar keine Variable -- erwartet.

        Da Benny es aber offenbar vorzieht keine weiteren Rückmeldungen zu geben, spielt es wohl keine Rolle mehr.

        An den Leerzeichen liegt es jedenfalls nicht: Der überwiegende Teil der Parser (auch der von PHP) lässt sich die Eingabe von einem Scanner in Token (T_VARIABLE ist so ein Token) zerlegen und arbeitet dann nur noch auf den Token. Ob die Token dabei zusammenstehen (solange der Scanner sie auseinanderhalten kann) oder von 2 Fantastillionen Leerzeichen getrennt werden ist in den allermeisten Fällen egal. (Ja, es gibt sehr merkwürdige Sprachen bei denen Whitespace Teil der Syntax ist, das trifft aber auf PHP nicht zu.)

        --
        Henryk Plötz
        Grüße aus Berlin
        ~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
        ~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~
  5. Hallo,
    Hat zwar wohl nichts mit der Fehlermeldung zu tun, aber muss das

    <input type="hidden" name="fid" value="<?php $fid ?>" border="0"> Titel des Beitrages: <input type="text" name="topic" size="50"><br>

    nicht
    ... value="<?php echo $fid ?>" ...
    heißen?

    Gruß Susanne