Felder / Werte ausgeben

  • Hallo,


    ich habe auf meiner Seite Input Felder die nach belieben vervielfältigt werden können.


    Code
    <div>    <input type="text" name="mytext1[]" class="test1 w1" required>    <input type="text" name="mytext2[]" class="test1 w2" required>    <input type="text" name="mytext3[]" class="test1 w3" required>  </div>



    Wenn ich mir die Ausgabe anschaue, sehe ich folgendes:


    PHP
    echo "<pre>";		 print_r($_POST["mytext1"]);		 print_r($_POST["mytext2"]);		 print_r($_POST["mytext3"]);	echo "</pre>";





    Jetzt ist die Frage, wie ich kann ich dieses zu einer vernünftigen Ausgabe bringen um die Werte z.B. in eine eMail zu packen. Ich habe irgendetwas gelesen, dass dieses scheinbar mit einer foreach schleifen gehen soll, aber leider verstehe ich dieses nicht.

  • Foreach macht hier wenig Sinn. Damit kannst du EIN Array durchlaufen. Du möchtest hier aber offenbar 3 unterschiedliche verknüpfen. Da würde ich an deiner Stelle eine for-Schleife benutzen und in jedem Durchlauf die Teile zusammenfügen. Das könnte so aussehen:


  • foreach würde auch funktionieren.

    PHP
    foreach($myText1 as $i => $text1)
    {
        $email .= "<p>". $text1 ." / ". $myText2[$i] ." / ". $myText3[$i] ."</p>";
    }


    Sieht natürlich nicht so prickelnd aus.

  • Hallo,


    vielen Dank für eure Hilfe. Ich habe versucht es umzusetzen und zwar so:


    PHP
    $mytext1 = array();
    $mytext2 = array();
    $mytext3 = array();	
    
        for($i = 0; $i < count($mytext1); $i++)	
            {	
                 echo "<p>". $mytext1[$i] ." / ". $mytext2[$i] ." / ". $mytext3[$i] ."</p>";	
            }



    Leider erhalte ich keine Ausgabe, auch keine Fehlermeldungen. Könnt ihr mir vielleicht nochmals helfen?

  • Du hast nur noch leere Arrays. Das heißt, die for-Schleife läuft genau 0 mal =)


    Basi hatte doch im Code-Kommentar geschrieben, dass die Arrays bei Dir vom Formular befüllt werden.


    in etwa:

    PHP
    $myText1 = $_POST["mytext1"];
    // ...
  • Vielen Dank, so hat es geklappt



    Hallo,


    ich habe nochmals eine Frage. Und zwar baue ich meine Mail folgendermaßen zusammen



    Ich bekomme dadurch leider eine weiße Seite, ohne Fehler. Zum Versenden nutzte ich http://swiftmailer.org/ Sehr ihr vielleicht den Fehler? Ich vermute es hat etwas mit dem unterbrechen von dem HTML $data['html'] zu tun oder ich baue die schleife falsch ein. Vielen Dank vorab für eure Hilfe und Geduld.

  • Hallo,


    das war tatsächlich richtig. Ich hatte das Formular aus meiner Kontakt.php kopiert. Danach habe ich das BCC raus geworfen, aber im Code:


    PHP
    ->setBCC($data['bcc']['email'],$data['from']['name']);


    stehen lassen. Dadurch ist der Fehler entstanden.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!