Formmailer - Wo ist der Fehler ?

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

  • Formmailer - Wo ist der Fehler ?

    Hallo,

    ich hab mir eben ein Formular gebastelt. Nach dem Abschicken rufe ich eine submit.php auf, die auch geladen wird, allerdings sollte diese mittels header location auf eine ok.html weiterleiten und ich eine email mit den Einträgen bekommen.

    Die submit.php wird nach dem Abschicken zwar geladen (bleibt aber weiß und wird nicht weitergeleitet) - Ebenso bekomme ich auch die besagte Email mit den Daten nicht.

    Das Formular sieht so aus (abgekürzt) :

    <form name="form1" method="post" action="submit.php">
    <INPUT TYPE="HIDDEN" name="id" value="email@gmx.de">
    <font size="2">imie:<br>
    </font>
    <input name="blabla1" type="text" class="textbox" id="blabla1">
    <input type="submit" name="Submit" class="textbox" value=" TEST ">
    Die submit.php sieht so aus (ebenfalls abgekürzt):

    <?php

    $emailinhalt = "Formularergebnisse";
    $emailinhalt .= "\r\nBlubb: ". $_POST["blabla1"];

    mail("email@gmx.de","blabla Daten", $emailinhalt);

    header("Location: http://seite.de/ok.html");

    ?>
    Das ganze lasse ich auf einem kostenlosen Webspace laufen - Weiß nicht obs daran liegt, sollte aber doch im normalfall gehen!?!

    Oder findet jemand den Fehler ? Ich bin echt ratlos.

    *edit*
    Ich hab festgestellt, das wenn ich die Mail Zeile in der submit rausmache, wird wenigstens weitergeleitet. Das wichtigste ist aber das ich die Email bekomme!!!
    *edit*

    Danke!
    Zuletzt geändert von Natheedo; 05.04.2008, 05:51.

  • #2
    Hallo!

    Wie heist denn die Datei wo du dein Formular drin hast?

    Weil du hast im action tag submit.php stehen und leitest per header auf eine andere um. Schreibe den action Befehl so das das Post an sich selber schickst,dann greift auch die header umleitung. Die header Umleitung kann so nicht funktionieren da du das ganze ja an die submit.php schickst,wie soll dann per haeder an die header("Location: http://seite.de/ok.html");
    weitergeleitet werden?

    Schreibe mal zum beispiel den action Befehl so!

    PHP-Code:
    <?php
    action
    ="<?php echo htmlentities($_SERVER['PHP_SELF']) ?>"
    ?>
    So schickst du das an die Formularseite selber und der header leitet dann auf deine gewünschte Seite um!
    Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
    http://www.lit-web.de

    Kommentar


    • #3
      Hallo,

      die Formulardatei heißt index.php - Aber das stimmt so - Nach dem Abschicken soll ja auf die submit.php geleietet werden - In der stehen dann die Mail Funktion usw. Nach dem abrufen dieser soll er dann ja auf die ok.html umleiten.

      Wenn ich das so mache wie du sagst, läd er ja nur die index.php neu.

      Wie gesagt die Weiterleitung funktioniert mit meiner Methode auch, aber nur wenn ich die Mail Funktion rausnehme.

      Ich hab einfach das Gefühl, mein Anbieter hat die Mail Funktion komplett gesperrt - Was mich auch nicht wundern würde, ist ja wie gesagt ein kostenloser.

      Gibts denn alternative Wege ? Das die Daten zumindest in einer kleinen Txt Datei oder so gespeichert werden - Das Formular ist auch nicht für den Dauereinsatz gedacht.

      Ist sowas schnell und einfach realisierbar?

      Natheedo

      Kommentar


      • #4
        PHPMailer: http://phpmailer.codeworxtech.com/examples.html
        Liebe Grüße,
        SteKoe!

        PHP Tutorials
        Peter Kropff | Quakenet | Schattenbaum.net

        Kommentar


        • #5
          Eine Frage warum denn aber so umständlich warum machst du das alles nicht in eine Datei?

          Natürlich kannst du die Daten auch n einer Textdatei speichern. Belies dich da über funktionen die man braucht dazu,habe von textdatei nicht all zuviel Plan. Aber ich glaube fopen,fread und fclose brauchst du.

          Ich persönlich würde aber alles in eine datei machen und das somit an die Datei selber schicken,ist unkompliziert und funktioniert auch!

          Und das dein Anbieter die Mailfunktion abgeschalten hat glaube ich weniger. Das kannst du aber auch mit einer php info glaube ich raus lesen.
          Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
          http://www.lit-web.de

          Kommentar


          • #6
            Original geschrieben von litterauspirna
            Hallo!

            Wie heist denn die Datei wo du dein Formular drin hast?

            Weil du hast im action tag submit.php stehen und leitest per header auf eine andere um. Schreibe den action Befehl so das das Post an sich selber schickst,dann greift auch die header umleitung. Die header Umleitung kann so nicht funktionieren da du das ganze ja an die submit.php schickst,wie soll dann per haeder an die header("Location: http://seite.de/ok.html");
            weitergeleitet werden?

            Schreibe mal zum beispiel den action Befehl so!

            PHP-Code:
            <?php
            action
            ="<?php echo htmlentities($_SERVER['PHP_SELF']) ?>"
            ?>
            So schickst du das an die Formularseite selber und der he

            ader leitet dann auf deine gewünschte Seite um!
            völliger Schwachsinn, was du erzählst!

            Also in meinen *ex* Formmailer hat folgner Code immer funktioniert:
            PHP-Code:
               $empf='ich@simon94.com';
               
            $betreff 'Kontakt-Forumlar - Simon94.com';
               
            $nachricht "Von: $name \r";
               
            $nachricht.= "Email: $mail_addy\r";
               
            $nachricht.= "----------------------------------\r\r";
               
            $nachricht.= $text;

               
            mail ($empf$betreff$nachricht);
               
            header('Location: mailed.php'); 

            BTW: haste mal das error_reporting hoch gedreht?

            Edit: Dateien lassen sich immer sehr bequem per fille_put_contents() beschreiben.
            Auslesen kannst du sie auchs sehr simpel mit
            file_get_contents()
            Zuletzt geändert von DerSchonWieder; 05.04.2008, 22:26.

            Kommentar


            • #7
              Wieso ist das Schwachsinn?

              Bei mir funktioniert das aber. Nur habe ich das PHP Script für meinen Formmailer auch dort wo das Formular steckt!

              Ob das Schwachsinn ist liegt denke ich wohl im Auge des betrachters!
              Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
              http://www.lit-web.de

              Kommentar

              Lädt...
              X