PHP-Anfänge: Fehlermeldung - Wer kann helfen?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PHP-Anfänge: Fehlermeldung - Wer kann helfen?

    Moin,

    sobald ich meine Seite aufrufe erscheint:
    "Parse error: syntax error, unexpected $end in /usr/export/www/vhosts/funnetwork/hosting/chackzz/Untitled-1.html on line 88

    Es ist nur ein einfaches Kontaktformular, mit Hilfe eines Buches erstellt...
    Hab jetzt gegrübelt, aber wo ist der Fehler?

    Hier der Code:
    PHP-Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Ein Kontaktformular</title>
    </head>
    <body>
    <?php
    if ($_POST['sent']==1)
    {
    $_POST['vorname']=trim($_POST['vorname']);
    $_POST['nachname']=trim($_POST['nachname']);
    $_POST['email']=trim($_POST['email']);
    $ganzername=$_POST['vorname']." ".$_POST['nachname'];
    echo 
    '<br>ihr Vorname ist '.$_POST['vorname'];
    echo 
    '<br>ihr Nachname ist '.$_POST['nachname'];
    echo 
    '<br>ihre E-Mail-Adresse ist '.$_POST['email'];
    if (!
    $_POST['vorname'])
    {
    echo 
    "<br>bitte geben sie ihren Vornamen ein";
    unset(
    $_POST['sent']);
    }
    if (!
    $_POST['nachname'])
    {
    echo 
    "<br>bitte geben sie ihren Nachnamen ein";
    unset(
    $_POST['sent']);
    }
    if (!
    $_POST['email'])
    {
    echo 
    "<br>bitte geben sie ihre e-Mail-Adresse ein";
    unset(
    $_POST['sent']);
    }
    if (
    $_POST['vorname'] AND $_POST['nachname'] AND $_POST['email'] AND $_POST['rank']=="1")
    {
    echo 
    "<br><b>Vielen Dank, $ganzername</b>";
    }
    if (
    $_POST['vorname'] AND $_POST['nachname'] AND $_POST['email'] AND $_POST['rank']=="2") {
    echo 
    "<br><b>Vielen Dank!</b>";
    }
    if (
    $_POST['vorname'] AND $_POST['nachname'] AND $_POST['email'] AND $_POST['rank']=="3") {
    echo 
    "<br><b>Schön!</b>";
    }
    if (
    $_POST['vorname'] AND $_POST['nachname'] AND $_POST['email'] AND $_POST['rank']=="4") {
    echo 
    "<br><b>Schade!</b>";
    }
    if(
    $_POST['vorname'] AND $_POST['nachname'] AND $_POST['email'])
    {
    $message="<html><body>";
    $message.="<P>Vorname: ";
    $message.=$_POST['vorname'];
    $message.="<br>Nachname: ";
    $message.=$_POST['nachname'];
    $message.="<br>E-Mail: ";
    $message.=$_POST['email'];
    $message.="<br><b>";
    $message.=$_POST['rank'];
    $message.="</b></p></body></html>";
    $header="\n Content-Type: text/html";
    if(
    mail("blablabla@blablabla.de""Feedback_Cov"$message$header))
    {
    echo 
    "Ihre Informationen wurden übermittelt";
    }
    else
    {
    echo 
    "Die Informationsübermittlung ist fehlgeschlagen, bitte versuchen sie es später noch einmal.";
    unset(
    $_POST['sent']);
    }
    if (!
    $_POST['sent']==1)
    {
    ?>
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    <input type="hidden" name="sent" value=1>
    Vorname <br /><input type="text" name="vorname" size="20" /><br />
    Nachname <br /><input type="text" name="nachname" size="20" /><br />
    E-Mail <br /><input type="text" name="email" size="30" /><br />
    <h4>Wie hat dir unser neues Coverage-System gefallen?</h4>
    <select size="10" name="rank">
    <option value="1">keine Angabe</option>
    <option value="2">Sehr gut, weiter so!</option>
    <option value="3">Gut!</option>
    <option value="4">nicht so gut!</option></select><br /><br />
    <input type="submit" name="submit" value="abschicken" /></form>
    <?php
    }
    ?>
    </body></html>
    besonders stutzig macht mich, dass in Dreamweaver der Code nur 87 Zeilen hat, der Fehler aber ja - angeblich - in Zeile 88 ist.
    Zeile 87 ist "</body></html>
    Zeile 88 dementsprechend LEER!


    Danke für die hilfe !
    Zuletzt geändert von ChackZz; 23.06.2006, 15:33.

  • #2
    prüf mal ob du diese klammer geschlossen hast

    ...
    if ($_POST['sent']==1)
    {
    ...

    php-Entwicklung | ebiz-consult.de
    PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
    die PHP Marktplatz-Software | ebiz-trader.de

    Kommentar


    • #3
      sollche fehlermeldungen bekommt man am meistens wenn du ein paar kalmmer vergessen hast.
      kontroliere einfach alle klammer.
      Es wird leichter sein, wenn du dabei inhalte, die in klamer stehen einwenig nach rechts verschiebst.
      ach so:
      das ist ein schwere konstrukt
      if (!$_POST['sent']==1)
      hast du vielleciht so
      if ($_POST['sent']!=1)
      gemeint?
      war nur eine frage.
      Slava
      bituniverse.com

      Kommentar


      • #4
        Hab erstmal die Anleitung des Buches befolgt.

        Das stand eben ==1

        Aber ihr hattet Recht, hatte eine } vergessen bzw übersehen. Danke schön, werde euch sicher noch öfter "nerven"

        Kommentar


        • #5
          überleg mal was das bedeuten soll
          if (!$_POST['sent']==1)
          wenn error reporting nicht auf E_ALL gesetzt ist
          ecxistiert dein sent liefert es
          true
          wenn
          nicht
          false
          jetzt wird es mal negiert
          wenn nicht existiert=true
          wenn existiert=false
          true==1==1
          also die bedingung wird ausgefühlt, wenn $_POST['sent'] nicht existiert.
          und dafür gibt es andere function die isset heist
          dann würde es so aussehen
          if(!isset($_POST['sent'] ))
          und genau das würde ein programmierer machen
          auch
          if($_POST['sent']) kann ich mir vorstellen.
          ich glaube einfach, dass es sich um ein Druckfehler handelt.
          Slava
          bituniverse.com

          Kommentar


          • #6
            So, nächstes Problemchen.
            Hab einen einfachen DM-Euro Rechner gecodet.

            PHP-Code:
            <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
            <html xmlns="http://www.w3.org/1999/xhtml">
            <head>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
            <title>Euro Rechner</title>
            </head><body>
            <h2>Euro-Rechner</h2>
            <?php
            $ergebnisDM 
            $_POST['betrag']*0.51;
            $ergebnisDollar $_POST['betrag']*1.21;
            $ergebnisPfund $_POST['betrag']*0.66;
            if (!
            $_POST['betrag']) {
            echo 
            '<p>Bitte heben sie einen Betrag ein</p>';
            }
            else {;
            switch(
            $_POST['rate'])
            {
            case 
            "DM":
            echo 
            "<p>".$_POST['betrag']." DM sind $ergebnisDM Euro<p>";
            break;
            case 
            "Dollar":
            echo 
            "<p>".$_POST['betrag']."Dollar sind $ergebnisDollar Euro</p>";
            break;
            case 
            "Pfund":
            echo 
            "<p>".$_POST['betrag']." Pfund sind $ergebnisPfund Euro</p>";
            break;
            }
            }
            ?>
            <p><b>Ausgangswährung</b></p>
            <fomr action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
            <select size="1" name="rate">
            <option value="DM">DM
            <option value="Dollar">Dollar
            <option value="Pfung">Pfund
            </select>
            <p><b>Betrag</b></p>
            <input type="text" name="betrag" size="20" /><br>
            <input type="submit" name="submit" value="berechnen" />
            </body>
            </html>
            Das Formular erscheint auch ganz normal, man gibt einen Wert ein und klickt auf berechnen, nur passiert dann nichts.
            Ich bekomme keine Fehlermeldung o.ä...

            Kommentar


            • #7
              Baue print_r($_POST); als Kontrollausgabe ein.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Original geschrieben von wahsaga
                Baue print_r($_POST); als Kontrollausgabe ein.
                Wo genau? Habs am Ende des PHP-Teils, alles wie vorher :/

                Kommentar


                • #9
                  fomr != form

                  Kommentar


                  • #10
                    Oha, ich Idiot, das hätte ich doch schon an den Farben sehen müssen.

                    Danke trotzdem, bis zum nächsten mal

                    Kommentar


                    • #11
                      bitte starte pro Frage einen Thread.

                      Danke
                      berni

                      php-Entwicklung | ebiz-consult.de
                      PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
                      die PHP Marktplatz-Software | ebiz-trader.de

                      Kommentar


                      • #12
                        Original geschrieben von Berni
                        bitte starte pro Frage einen Thread.

                        Danke
                        berni
                        Okay, ich wollte nur nicht das Forum vollspammen, da sicher mehr Fragen in nächster Zeit kommen werden, beschäftige mich erst seit ein paar Tagen mit php..

                        Kommentar


                        • #13
                          na dann viel Erfolg beim lernen

                          php-Entwicklung | ebiz-consult.de
                          PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
                          die PHP Marktplatz-Software | ebiz-trader.de

                          Kommentar

                          Lädt...
                          X