[Variablen] email details aendern

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

  • [Variablen] email details aendern

    hi

    ich habe mir mit viel lesen ein email formular gebaut. funktioniert soweit ganz gut. allerdings wuerde ich gern das die betreff zeile und der absender aus den eingegeben daten
    ('email' / 'subject') besteht und nicht aus den vorgegebenen
    (Feedback from website / My website<feedback@beispiel.com>). ist das moeglich?

    PHP-Code:
    <?php
    if (array_key_exists('SUBMIT'$_POST)) {
    $to 'info@beispiel.com'
    $subject 'Feedback from website';
    $expected = array('realname''email''message''subject');
    $required = array('realname''email''message''subject');
    $headers 'From: My website<feedback@beispiel.com>';
    }
    ?>
    moke
    Zuletzt geändert von moke102; 25.07.2008, 14:37.
    BlueSkys - moke102
    www.moke102.com

  • #2
    Re: [Variablen] email details aendern

    Original geschrieben von moke102
    ich habe mir mit viel lesen ein email formular gebaut.
    Dann solltest du jetzt noch etwas mehr lesen (und anwenden), nämlich die Forumsregeln
    Gruss
    H2O

    Kommentar


    • #3
      cool. teil eins (subject) funktioniert.

      gegen welche regel verstosse ich denn? hab nix gefunden. sorry
      Zuletzt geändert von moke102; 25.07.2008, 14:41.
      BlueSkys - moke102
      www.moke102.com

      Kommentar


      • #4
        Original geschrieben von moke102
        gegen welche regel verstosse ich denn?
        Dass der Code nicht in PHP-Tags stand und nicht eingerückt ist.
        Aber OK, auf die Daten vom Formular hast du ja mit $_POST Zugriff (sofern mit method='post' definiert). Diese kannst du ja direkt übernehmen. Allerdings sollte die Gültigkeit überprüft werden. Z.B. so:
        PHP-Code:
        <?php
        if (array_key_exists('SUBMIT'$_POST)) {
            
            if (!
        valid_mail($_POST['email'])){
                exit(
        "Ung&uuml;ltige Mail-Adresse<br />");
            }
            
        $to $_POST['email'];
            
        $subject $_POST['subject'];
            
        $expected = array('realname''email''message''subject');    // ??
            
        $required = array('realname''email''message''subject');    // ??
            
        $headers 'From: My website<feedback@beispiel.com>';
            
        $process 'process_mail.inc.php';
            if (
        file_exists($process) && is_readable($process)) {
                include(
        $process);
            }
            else {
                
        $mailSent false;
                
        mail($to'Server problem'"$process cannot be read"$headers);
            }
        }


        function 
        valid_mail($madr){
            
        $madr trim($madr);
            if(
        strlen($madr) < 6) return false;
            
        $s explode('@'$madr);
            if(
        count($s) > 2) return false;
            
        $pat '/^[^ ]+@[^ @]+\.\w{2,6}$/';
            return 
        preg_match($pat$madr) > true false;
        }
        ?>
        Gruss
        H2O

        Kommentar


        • #5
          danke. werd mal lesen meld mich wenn ich s verstanden hab.

          gruss moke
          BlueSkys - moke102
          www.moke102.com

          Kommentar


          • #6
            glaub ich habs greostenteils verstanden.
            die ueberpruefung der richtigkeit und eventuellen fehlen von eingaben wird schon vom process_mail_inc.php erledigt.

            problem ist das einbinden der 'email' als absender (From:...)
            PHP-Code:
                $headers 'From: My website<feedback@beispiel.com>'
            ergibt abesender : My website
            mit Reply komme ich zu feeback@beispiel.com anstatt zu 'email'

            den betreff hab ich so geloest.
            PHP-Code:
            echo 'subject'.$subject
            BlueSkys - moke102
            www.moke102.com

            Kommentar


            • #7
              Ja, du musst da schon die Variable mit der E-Mail einbauen, ansonsten klappts auch nicht.

              Kommentar


              • #8
                dat is genau das problem. egal wie ich 'emial' einbaue, komme nur fehlermeldungen, bzw faslche daten raus.
                BlueSkys - moke102
                www.moke102.com

                Kommentar


                • #9
                  Dann zeig doch mal deine Ansätze. Hilfe zur Selbsthilfe, statt "macht mal!".

                  Grundlagen

                  Kommentar


                  • #10
                    PHP-Code:
                    $headers "From: 'email'"
                    ergibt: unexpected ' ....
                    PHP-Code:
                    $headers "From: <'email'>"
                    ergibt: 'email'@dialog.meinwebtools.com
                    PHP-Code:
                    echo 'email'.$headers
                    www-data@dialog.meinwebtools.com
                    wobei ich wenigstens im messagebody eine reply to zeile bekomme.
                    kleiner fortschritt
                    BlueSkys - moke102
                    www.moke102.com

                    Kommentar


                    • #11
                      $headers = "From: 'email'"; ergibt: unexpected ' ....
                      Das stimmt nicht. der Code enthält keinen Syntaxfehler. Er macht zwar keinen sinn, aber gibt sicher keinen Fehler.

                      $headers = "From: <'email'>"; ergibt: 'email'@dialog.meinwebtools.com
                      Mal ganz ehrlich, das ist doch stupides ausprobieren, oder hast du das mit der syntax von mail mal abgeglichen?

                      Wie kommst du eigentlich darauf die Zeichenkette "email" da einzufügen. Ich dachte du willst die Usereingabe verwenden?

                      echo 'email'.$headers; www-data@dialog.meinwebtools.com
                      Ich weiß zwar nicht, was $headers enthält, aber da passiert nicht mehr als eine Testausgabe. Die hat mit sicherheit keine Auswirkung auf die versendete E-Mail.

                      wobei ich wenigstens im messagebody eine reply to zeile bekomme. kleiner fortschritt
                      Das scheint mir, als ob der Header zu früh beendet wird. Wie das geschieht, steht auch im Manual.

                      Aber du solltest dich erstmal Grundlegend mit der Thematik beschäftigen... Die sache mit dem "email"-String ist wirklich zu gravierend, so dass es scheint, dass du einfach versuchst ein Script zusammenzustückeln. Das ist wirklich zu gefährlich. Du bist auf dem besten Wege dahin, deinen Server in eine Spam-Schleuder zu verwandeln.

                      Wenn es sich um eine einmalige Geschichte handelt (du scheinst ja sonst fürs Layout zuständig zu sein) würde ich einfach mal einen deiner Kollegen nach nem vernünftigen Formular fragen.

                      Ansonsten stehe ich aber gerne nochmal für konkrete Rückfragen zur Verfügung, nur sei dir darüber klar, dass du gewisse Grundlagen benötigst um das Ding wenigstens halbwegs sicher zu machen...

                      Gruß

                      Kommentar


                      • #12
                        da hast du leider recht. bin am rumstueckeln. versuche das nach dem prinzip "lesen und ausprobieren" zu lernen. was offensichtlich nur mühsam gelingt.
                        kollegen gibt es leider nicht. sont wuerd ich euch nicht nerven und den *¿!!* nicht lernen wollen. (wird bevors nicht funktioniert natuerlich auch nicht verkauft)
                        mir bleibt also nix anderes uebrig als meine freizeit mit code tuefteln und texte lesen zu verballern. bin euch sehr dankbar fuer die unterstuetzung.
                        BlueSkys - moke102
                        www.moke102.com

                        Kommentar


                        • #13
                          http://de3.php.net/manual/de/function.mail.php
                          Gruß
                          Uzu

                          private Homepage

                          Kommentar


                          • #14
                            PHPMailer? --> http://sourceforge.net/projects/phpmailer/#item3rd-1
                            Liebe Grüße,
                            SteKoe!

                            PHP Tutorials
                            Peter Kropff | Quakenet | Schattenbaum.net

                            Kommentar


                            • #15
                              vielen dank!!!!
                              habs gerafft. hat ein wenig gedauert, bin aber durch euch und Herrn Schattenbaum (super verstaendliches tutorial. sehr zu empfehlen!)
                              bin ich einen meilenstein weiter. sieht jetzt so aus:

                              PHP-Code:
                              $subject $_POST['subject'];
                              $sender $_POST['realname'];
                              $sendermail $_POST['email'];
                              $expected = array('realname''email''subject''message');
                              $required = array('realname''email''subject''message');
                              $headers "From: $sender <$sendermail>\n"
                              gruss
                              christian
                              BlueSkys - moke102
                              www.moke102.com

                              Kommentar

                              Lädt...
                              X