oliver74: Formmailer

Hallo,

ich hoffe jemand kann mir mit dem Kontaktformular auf meiner Homepage helfen.

Ich habe über "Onlex.de" einen Formmailer eingerichtet... Nach dem Klicken auf den Submit-Button werden die eingegebenen Daten richtig an meine E-Mail-Adresse geschickt. Nur leider erscheint dannach die Homepage von Onlex.de.

Ich habe in das Formular folgendes integriert:

"<input type="hidden" name="html_template_url" value="http://www.meineDomain.de/antwort.html"/>"

mit der Hoffnung, dass meine antwort.html (Bestätigungsseite) angezeigt wird.

Ich möchte sozusagen, dass die Daten gesendet werden (klappt) und gleichzeitig meine persönliche Bestätigungsseite angezeigt wird.

Danke schon mal vorab.

Oliver

  1. ich hoffe jemand kann mir mit dem Kontaktformular auf meiner Homepage helfen.

    ja

    "Onlex.de"

    besser wäre es, einen eigenen Formmailer einzusetzen, falls du über PHP verfügst tut's vielleicht dieser leicht konfigurierbare aus den SelfHTML-Fachartikeln

    1. ok, danke. ich werde es so versuchen. leider kenn ich mich nicht mit php aus.
      wie ist die verknüpfung zwischen html u. php? sind das dann 2 seperate dateien oder nur eine php-Datei. Habe schon ein paar sachen probiert, es klappt aber noch nicht. wenn ich 2 dateien mache (html,php) ist in dem formular durch den submit-button der text weg, kommt aber noch nicht bei der angegebenen e-mail-adresse an. Wie es aussieht kann die html-datei nicht auf die php-datei zugreifen, oder?

      mein php-text (fortgeschrittener formmailer ;-) ) sieht so aus:

      <?php

      /**
       * Konfiguration
       *
       * Bitte passen Sie die folgenden Werte an, bevor Sie das Script benutzen!
       *
       * Das Skript bitte in UTF-8 abspeichern (ohne BOM).
       */

      // An welche Adresse sollen die Mails gesendet werden?
      $zieladresse = 'IhrName@EXAMPLE.com';

      // Welche Adresse soll als Absender angegeben werden?
      // (Manche Hoster lassen diese Angabe vor dem Versenden der Mail ueberschreiben)
      $absenderadresse = 'ihrAndererName@EXAMPLE.com';

      // Welcher Absendername soll verwendet werden?
      $absendername = 'Formmailer';

      // Welchen Betreff sollen die Mails erhalten?
      $betreff = 'Feedback';

      // Zu welcher Seite soll als "Danke-Seite" weitergeleitet werden?
      // Wichtig: Sie muessen hier eine gueltige HTTP-Adresse angeben!
      $urlDankeSeite = 'http://www.EXAMPLE.com/IhrName/IhreSeite.htm';

      // Welche(s) Zeichen soll(en) zwischen dem Feldnamen und dem angegebenen Wert stehen?
      $trenner = ":\t"; // Doppelpunkt + Tabulator

      /**
       * Ende Konfiguration
       */

      require_once "Swift-4.1.6/lib/swift_required.php"; // Swift initialisieren

      if ($_SERVER['REQUEST_METHOD'] === "POST") {

      $message = Swift_Message::newInstance(); // Ein Objekt für die Mailnachricht.

      $message
              ->setFrom(array($absenderadresse = 'kontakt@meineDomain.de' => $absendername = 'Formmailer'))
              ->setTo(array($zieladresse = 'kontakt@meineDomain.de')) // alternativ existiert setCc() und setBcc()
              ->setCc(array($zieladresse = 'meineemail@gmx.de'))
              ->setSubject($betreff = 'Kontaktformular');

      $mailtext = "";

      foreach ($_POST as $name => $wert) {
              if (is_array($wert)) {
                      foreach ($wert as $einzelwert) {
                      $mailtext .= $name.$trenner = ":\t".$einzelwert."\n";
                  }
              } else {
                  $mailtext .= $name.$trenner = ":\t".$wert."\n";
              }
          }

      $message->setBody($mailtext, 'text/plain');

      $mailer = Swift_Mailer::newInstance(Swift_MailTransport::newInstance());
          $result = $mailer->send($message);

      if ($result == 0) {
              die("Mail konnte nicht versandt werden.");
          }

      header("Location: $urlDankeSeite = 'http://www.meineDomain.de/antwort.html'");
          exit;
      }

      header("Content-type: text/html; charset=utf-8");

      ?>

      1. ok, danke. ich werde es so versuchen. leider kenn ich mich nicht mit php aus.

        und dann gleich der "fortgeschrittene"?
        Hast du denn dafür die Vorbereitung gemacht wie angegeben (Swift-Bibliothek)?

        Ansonsten braucht der Mailer eine Datei, die den kompletten Inahlt des Beispiel-Bereiches enthält.

        Der PHP-Teil macht ungefähr folgendes:
        Wenn keine Daten aus dem Formular vom Browser kommen schickt er den HTML-Teil an den Browser (also das Formular).
        Anderenfalls verarbeitet er die empfangenen Daten (bastelt eine E-Mail und verschickt diese) und sendet an den Browser die "Dankeseite".

        1. ja, die bibliothek ist drin...
          das ist aber nicht das problem. ich weiß nun leider immer noch nicht wie php und html miteinander verknüpft sind (1 datei o. 2 dateien).

          die html sieht so aus (ich sehe da keinen bezug zur php-datei, ok das ganze in tabellenform, was aber sicher nicht das problem ist):

          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
          <html>
            <head>
            <meta http-equiv="content-type" content="text/html; charset=windows-1250">
            <meta name="author" content="Name">
            <meta name="publisher" content="Name">
            <meta name="copyright" content="Name">
            <meta name="language" content="deutsch,de" />
            <meta http-equiv="content-language" content="de" />
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
                  <title>Formmailer</title>
                  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            </head>
            <body>
                  <h1>Kontaktormular</h1>
            <form action="" method="post">
              <table border="0" cellpadding="0" cellspacing="4">
              <tr>
                <td align="right">Name:</td>
                <td><input name="Name" type="text" size="30" maxlength="30"></td>
              </tr>
              <tr>
                <td align="right">Vorname:</td>
                <td><input name="Vorname" type="text" size="30" maxlength="40"></td>
              </tr>
              <tr>
                <td align="right">Telefon:</td>
                <td><input name="Telefon" type="text" size="30" maxlength="30"></td>
              </tr>
              <tr>
                <td align="right">e-mail:</td>
                <td><input name="e-mail" type="text" size="30" maxlength="30"></td>
              </tr>
            </table>
            <h2>Überschrift</h2>
            <table border="0" cellpadding="0" cellspacing="4">
              <tr>
                <td align="right">text:</td>
                <td><input name="text" type="text" size="30" maxlength="30"></td>
              </tr>
              <tr>
                <td align="right">text:</td>
                <td><input name="text" type="text" size="30" maxlength="30"></td>
              </tr>
              <tr>
                <td align="right">text:</td>
                <td><input name="text" type="text" size="30" maxlength="30"></td>
              </tr>
              <tr>
                <td align="right">text:</td>
                <td><input name="text" type="text" size="30" maxlength="30"></td>
              </tr>
              <tr>
                <td align="right">text:</td>
                <td><input name="text" type="text" size="30" maxlength="30"></td>
              </tr>
            </table>
            <h2>Bitte beschreiben Sie hier Ihr Anliegen!</h2>
            <textarea name="user_eingabe" cols="50" rows="10"></textarea><br>
                      <input type="submit" value="Senden" />
                      <input type="reset" value="Zurücksetzen" />
                      </p>
            </form>
            </body>
          </html>

          1. das ist aber nicht das problem. ich weiß nun leider immer noch nicht wie php und html miteinander verknüpft sind (1 datei o. 2 dateien).

            ich weiß zwar nicht, was in den Beispielen und meinem Kommentar daran unverständlich war aber nochmals klar verständlich:

            Das gehört alles in eine Datei: der PHP-Teil UND der HTML-Teil.
            Und zwar genau so wie in den Beispiellistings.

            1. ok, habe alles in eine "php-datei... falsch? mit .html gehts auch nicht" geschrieben und auf meiner index-seite einen link zu dieser seite...

              wenn ich dann den link (kontaktformular) anklicke kommt das "datei speichern unter- o. öffnen mit-fenster"...

              ach, jetzt kommt schon beim aufruf der startseite das "datei speichern unter- o. öffnen mit-fenster"

              1. Hallo,

                wenn ich dann den link (kontaktformular) anklicke kommt das "datei speichern unter- o. öffnen mit-fenster"...
                ach, jetzt kommt schon beim aufruf der startseite das "datei speichern unter- o. öffnen mit-fenster"

                unterstützt denn dein Webspace überhaupt PHP? Scheint eher nicht so ...

                Ciao,
                 Martin

                --
                Idealismus wächst mit der Entfernung zum Problem.
                Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                1. hallo,

                  hab bei 1u1 angerufen und nachgefragt: es ist wirklich so, dass dieser Webspace (kostenlose domain im festnetz-tarif inbegriffen) php nicht unterstützt...

                  gibt es vielleicht trotzdem eine möglichkeit php dort zum laufen zu bringen? wenn ja, was muss ich genau machen?

                  danke, oliver

                  1. Hallo oliver74,

                    wenn es nur um den Formmailer geht, in meinem 1und1-"Kostenlos"-Tarif ist einer enthalten. Sonst musst du dir Webspace mit php mieten.

                    Gruß, Jürgen

                  2. gibt es vielleicht trotzdem eine möglichkeit php dort zum laufen zu bringen? wenn ja, was muss ich genau machen?

                    den Vertrag ändern und dafür entsprechend bezahlen.