Ankündigung

Einklappen
Keine Ankündigung bisher.

Kontaktformular funktioniert nicht: Parse error: syntax error, unexpected T_VARIABLE

Einklappen

Neue Werbung 2019

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

  • Kontaktformular funktioniert nicht: Parse error: syntax error, unexpected T_VARIABLE

    Hallo liebe Community, ich habe versucht mir ein Formular zu erstellen was die Daten an meine E-Mail schickt leider bekomme ich beim aufrufen immer den Fehler: Parse error: syntax error, unexpected T_VARIABLE in /var/customers/webs/ni357652_1/include/anfordern.php on line 31

    hier einmal mein script: ----Wo ist mein Fehler?

    PHP-Code:
    <form method="POST">
                <p>Name:</p><input type="text" class="form-control" style="width:200px;" name="name" placeholder="Name"/><br  />
                <p>Vorname:</p><input type="text" class="form-control" style="width:200px;" name="vorname" placeholder="Vorname"/><br  />
                <p>Username:</p><input type="text" class="form-control" style="width:200px;" name="username" placeholder="Username"/><br  />
                <p>Geburtsdatum:</p><input type="text" class="form-control" style="width:200px;" name="date" placeholder="Geburtsdatum"/><br  />
                <p>Telefon:</p><input type="text" class="form-control" style="width:200px;" name="phone" placeholder="Telfon (Festnetz)"/><br  />
                <p>E-Mail:</p><input type="text" class="form-control" style="width:200px;" name="email" placeholder="E-Mail"/><br  />
                <p>Skype:</p><input type="text" class="form-control" style="width:200px;" name="skype" placeholder="Skype Username"/><br  />
                <p>Paket</p><select name="paket" class="form-control">
                                <option>Hobby</option>
                                <option>Projekt</option>
                                <option>Beruf</option>
                            </select>
                <p>Nachricht:</p><textarea class="form-control" style="width: 250px;" name="text" placeholder="Deine Nachricht"></textarea><br  />
                <button type="submit" name="submit" class="btn btn-default">Senden</button>
            </form>

    <?php
        
    if(isset($_POST['submit'])) {
            
    $Name $_POST['name'];
            
    $Vorname $_POST['vorname'];
            
    $Username $_POST['username'];
            
    $Geburtsdatum $_POST['date'];
            
    $Telefon $_POST['phone'];
            
    $eMail $_POST['email'];
            
    $Skype $_POST['skype'];
            
    $Paket $_POST['select'];
            
    $From 'From: '.$Username.' <'.$eMail.'>\n';
            
    $From .= 'Reply-To: '.$eMail.'\n';
            
    $From .= 'Content-Type: text/html\n';
            
    mail('snippex@webdesign-jh.de'$Title$Name$Vorname$Username$Geburtsdatum $Telefon $eMail$Skype$Paket$Title$Text$From);
            echo  
    'Versendet!';
        }




    ?>
    Vielen Dank und LG Jakob


  • #2
    $Paket = $_POST['select']; -> $Paket = $_POST['paket'];

    Zumindests steht Paket als name in deiner Form

    Kommentar


    • #3
      Dann schau dir doch die Zeile 31 mal an und guck, was du zwischen einigen Variablen vergessen hast.

      Variablen kannst du nicht einfach so hintereinander schreiben und erwarten, dass PHP weiß was du willst.
      Google: PHP String Konkatenation
      Zitat von nikosch
      Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

      Kommentar


      • #4
        PHP-Code:
        mail('test@example.com'$Title$Name$Vorname$Username$Geburtsdatum $Telefon $eMail$Skype$Paket$Title$Text$From); 
        Und nutze gleich eine Mailer-Klasse, damit vermeideat du schon von Beginn an viele Mail-Probleme.

        http://php-de.github.io/jumpto/mail-class/

        LG
        Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
        PHP.de Wissenssammlung | Kein Support per PN

        Kommentar


        • #5
          PHP-Code:
          <form method="POST">
                      <p>Name:</p><input type="text" class="form-control" style="width:200px;" name="name" placeholder="Name"/><br  />
                      <p>Vorname:</p><input type="text" class="form-control" style="width:200px;" name="vorname" placeholder="Vorname"/><br  />
                      <p>Username:</p><input type="text" class="form-control" style="width:200px;" name="username" placeholder="Username"/><br  />
                      <p>Geburtsdatum:</p><input type="text" class="form-control" style="width:200px;" name="date" placeholder="Geburtsdatum"/><br  />
                      <p>Telefon:</p><input type="text" class="form-control" style="width:200px;" name="phone" placeholder="Telfon (Festnetz)"/><br  />
                      <p>E-Mail:</p><input type="text" class="form-control" style="width:200px;" name="email" placeholder="E-Mail"/><br  />
                      <p>Skype:</p><input type="text" class="form-control" style="width:200px;" name="skype" placeholder="Skype Username"/><br  />
                      <p>Paket</p><select name="paket" class="form-control">
                                      <option>Hobby</option>
                                      <option>Projekt</option>
                                      <option>Beruf</option>
                                  </select>
                      <p>Nachricht:</p><textarea class="form-control" style="width: 250px;" name="text" placeholder="Deine Nachricht"></textarea><br  />
                      <button type="submit" name="submit" class="btn btn-default">Senden</button>
                  </form>

          <?php
              
          if(isset($_POST['submit'])) {
                  
          $Name $_POST['name'];
                  
          $Vorname $_POST['vorname'];
                  
          $Username $_POST['username'];
                  
          $Geburtsdatum $_POST['date'];
                  
          $Telefon $_POST['phone'];
                  
          $eMail $_POST['email'];
                  
          $Skype $_POST['skype'];
                  
          $Paket $_POST['select'];
                  
          $From 'From: '.$Username.' <'.$eMail.'>\n';
                  
          $From .= 'Reply-To: '.$eMail.'\n';
                  
          $From .= 'Content-Type: text/html\n';
                  
          mail('snippex@webdesign-jh.de'$Title$Name$Vorname$Username$Geburtsdatum $Telefon $eMail$Skype$Paket$Title$Text$From);
                  echo  
          'Versendet!';
              }
          ?>
          PHP-Code:
          <form method="POST">
                      <p>Name:</p><input type="text" class="form-control" style="width:200px;" name="name" placeholder="Name"/><br  />
                      <p>Vorname:</p><input type="text" class="form-control" style="width:200px;" name="vorname" placeholder="Vorname"/><br  />
                      <p>Username:</p><input type="text" class="form-control" style="width:200px;" name="username" placeholder="Username"/><br  />
                      <p>Geburtsdatum:</p><input type="text" class="form-control" style="width:200px;" name="date" placeholder="Geburtsdatum"/><br  />
                      <p>Telefon:</p><input type="text" class="form-control" style="width:200px;" name="phone" placeholder="Telfon (Festnetz)"/><br  />
                      <p>E-Mail:</p><input type="text" class="form-control" style="width:200px;" name="email" placeholder="E-Mail"/><br  />
                      <p>Skype:</p><input type="text" class="form-control" style="width:200px;" name="skype" placeholder="Skype Username"/><br  />
                      <p>Paket</p><select name="paket" class="form-control">
                                      <option>Hobby</option>
                                      <option>Projekt</option>
                                      <option>Beruf</option>
                                  </select>
                      <p>Nachricht:</p><textarea class="form-control" style="width: 250px;" name="text" placeholder="Deine Nachricht"></textarea><br  />
                      <button type="submit" name="submit" class="btn btn-default">Senden</button>
                  </form>

          <?php
              
          if(isset($_POST['submit'])) {
                  
          $Name $_POST['name'];
                  
          $Vorname $_POST['vorname'];
                  
          $Username $_POST['username'];
                  
          $Geburtsdatum $_POST['date'];
                  
          $Telefon $_POST['phone'];
                  
          $eMail $_POST['email'];
                  
          $Skype $_POST['skype'];
                  
          $Paket $_POST['select'];
                  
          $From 'From: '.$Username.' <'.$eMail.'>\n';
                  
          $From .= 'Reply-To: '.$eMail.'\n';
                  
          $From .= 'Content-Type: text/html\n';
                  
          mail('snippex@webdesign-jh.de'$Title$Name$Vorname$Username$Geburtsdatum $Telefon $eMail$Skype$Paket$Title$Text$From);
                  echo  
          'Versendet!';
              }
          ?>
          PHP-Code:
          <form method="POST">
                      <p>Name:</p><input type="text" class="form-control" style="width:200px;" name="name" placeholder="Name"/><br  />
                      <p>Vorname:</p><input type="text" class="form-control" style="width:200px;" name="vorname" placeholder="Vorname"/><br  />
                      <p>Username:</p><input type="text" class="form-control" style="width:200px;" name="username" placeholder="Username"/><br  />
                      <p>Geburtsdatum:</p><input type="text" class="form-control" style="width:200px;" name="date" placeholder="Geburtsdatum"/><br  />
                      <p>Telefon:</p><input type="text" class="form-control" style="width:200px;" name="phone" placeholder="Telfon (Festnetz)"/><br  />
                      <p>E-Mail:</p><input type="text" class="form-control" style="width:200px;" name="email" placeholder="E-Mail"/><br  />
                      <p>Skype:</p><input type="text" class="form-control" style="width:200px;" name="skype" placeholder="Skype Username"/><br  />
                      <p>Paket</p><select name="paket" class="form-control">
                                      <option>Hobby</option>
                                      <option>Projekt</option>
                                      <option>Beruf</option>
                                  </select>
                      <p>Nachricht:</p><textarea class="form-control" style="width: 250px;" name="text" placeholder="Deine Nachricht"></textarea><br  />
                      <button type="submit" name="submit" class="btn btn-default">Senden</button>
                  </form>

          <?php
              
          if(isset($_POST['submit'])) {
                  
          $Name $_POST['name'];
                  
          $Vorname $_POST['vorname'];
                  
          $Username $_POST['username'];
                  
          $Geburtsdatum $_POST['date'];
                  
          $Telefon $_POST['phone'];
                  
          $eMail $_POST['email'];
                  
          $Skype $_POST['skype'];
                  
          $Paket $_POST['select'];
                  
          $From 'From: '.$Username.' <'.$eMail.'>\n';
                  
          $From .= 'Reply-To: '.$eMail.'\n';
                  
          $From .= 'Content-Type: text/html\n';
                  
          mail('snippex@webdesign-jh.de'$Title$Name$Vorname$Username$Geburtsdatum $Telefon $eMail$Skype$Paket$Title$Text$From);
                  echo  
          'Versendet!';
              }
          ?>
          Was fällt auf?
          Richtig, trotz redlicher Bemühung meinerseits ist es mir nicht gelungen mehr Wiederholungen zu produzieren als du. Dabei gilt der simple Grundsatz:
          Don't repeat yourself (DRY)
          Statt
          PHP-Code:
          <p>Name:</p><input type="text" class="form-control" style="width:200px;" name="name" placeholder="Name"/><br  />
          // usw und so fort und wenn sie nicht gestorben sind dann wiederholen sie sich noch heute 
          z. B.
          PHP-Code:
          function makeFields($names = array()) 
          {
              
          $html '';
              foreach (
          $names as $name => $caption) {
                  
          $html .= '<p>'.$caption.':</p><input type="text" class="form-control" style="width:200px;" name="'.$name.'" placeholder="'.$caption.'"/><br  />';
              }
              return 
          $thml;
          }
          $fields makeFields(array(
              
          'name' => 'Name',
              
          'vorname' => 'Vorname',
              
          'username' => 'Username',
              
          'Geburtsdatum' => 'date',
              ...
          )); 
          Oder wenigstens eine Funktion die eine "Zeile" deines Forms mit Inhalt erstellt. Ließe sich dann auch für andere Elemente wie select, button etc. gut umsetzen.

          Kommentar


          • #6
            PHP-Code:
            //...
            mail('test@example.com'$Title$Name$Vorname$Username$Geburtsdatum $Telefon $eMail$Skype$Paket$Title$Text$From);
            echo  
            'Versendet!'
            Und weil es mir gerade auffällt.. das "Versendet" ist ja auch putzig - sinnlos.

            Wenn du schon mit mail() unglücklich werden willst, dann prüfe wenigstens was mail() zurückgibt und schreib nicht einfach ohne jeglichen connex "Versendet" hin.

            Und ich erwähne nochmals nachdrücklich, wie oben bereits erwähnt, nutze eine Mailer-Klasse!
            Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
            PHP.de Wissenssammlung | Kein Support per PN

            Kommentar


            • #7
              Da hausl es bereits zwei mal erwähnt hat, verzichte ich mal auf den Hinweis auf Mailer-Klassen.
              Was mich ist, daß Du keinen Fehler bekommst bei der mail()-Verwendung

              Hast Du ErrorReport auch wirklich bis zum Anschlag aufgedreht?
              PHP-Code:
              error_reporting ( -);
              ini_set 'display_errors'true ); 
              und btw. entferne mal die Mail-Adresse in Deinen Posts!


              EDIT:
              http://webdesign-jh.de/?p=projects Das ist nicht Dein Ernst, oder?!
              Du bietest so ein Script öffentlich ( nach Registrierung ) an? Das ist grob fahrlässig und ich bitte Dich, dies zu unterlassen!
              Der Ärger bzw. die Probleme sind vorprogrammiert!
              Competence-Center -> Enjoy the Informatrix
              PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

              Kommentar


              • #8
                Script öffentlich

                EDIT:
                http://webdesign-jh.de/?p=projects Das ist nicht Dein Ernst, oder?!
                Du bietest so ein Script öffentlich ( nach Registrierung ) an? Das ist grob fahrlässig und ich bitte Dich, dies zu unterlassen!
                Der Ärger bzw. die Probleme sind vorprogrammiert![/QUOTE]

                Das script steht dort aus dem Grund, dass ich nirgendwo anders so ein Script gefunden habe. Und was heist nach registrierung?!! Man muss sich nicht registrieren um in den Bereich zu kommen! Aber dies kannst du ja auch nicht wissen da du deinen Account nicht einmal aktiviert hast. Ich habe extra bei der Registrierung: "PHP ANFÄNGER" ausgewählt. Und: trololo@trash-mail.com ?! Dein ernst ?! Btw. die E-Mail adresse kann zu sehen sein...ist eh nicht wichtig habe ein WS bei Nitrado mit 150 Mails da kommt es nicht darauf an das diese eine irgendwo zu sehen ist ^^

                Kommentar


                • #9
                  Zitat von hausl Beitrag anzeigen
                  Und weil es mir gerade auffällt.. das "Versendet" ist ja auch putzig - sinnlos.

                  Wenn du schon mit mail() unglücklich werden willst, dann prüfe wenigstens was mail() zurückgibt und schreib nicht einfach ohne jeglichen connex "Versendet" hin.

                  Und ich erwähne nochmals nachdrücklich, wie oben bereits erwähnt, nutze eine Mailer-Klasse!
                  Ich werde es ändern! SRY, bin leider im gebier PHP blutiger "anfänger"

                  Kommentar


                  • #10
                    Zitat von Jakob2000
                    Das script steht dort aus dem Grund, dass ich nirgendwo anders so ein Script gefunden habe.
                    Zitat von Website
                    Kontaktformular welches mit einem PHP Script an eine E-Mail Adresse geschickt wird.
                    So ein Script hast Du nicht gefunden
                    Zitat von Jakob2000
                    Man muss sich nicht registrieren um in den Bereich zu kommen!
                    Das ist ja noch schlimmer!!!
                    Zitat von Jakob2000
                    Aber dies kannst du ja auch nicht wissen da du deinen Account nicht einmal aktiviert hast.
                    Natürlich nicht, dazu müsste ich mich ja erstmal registrieren, was ich sicher nicht tun werde, denn ich sehe ja hier, was mich erwartet.
                    Zitat von Jakob2000
                    Ich habe extra bei der Registrierung: "PHP ANFÄNGER" ausgewählt.
                    Absolut i.O. dagegen sage ich ganz bestimmt nichts. Aber es ist nach meiner Auffassung mehr als grob fahrlässig, solche Scripte bei dem Kentnisstand öffentlich zur Verfügung zu stellen!
                    Zitat von Jakob2000
                    Und: trololo@trash-mail.com ?! Dein ernst ?!
                    Keine Ahnung, frag den, dem die gehört, mir jedenfalls nicht. Ich habe mich nicht registriert!
                    Competence-Center -> Enjoy the Informatrix
                    PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                    Kommentar

                    Lädt...
                    X