chrisi1002: Formularmail

hallo!

wenn ich dieses formmail http://selfaktuell.teamone.de/tippstricks/php/form-mail/index.htm hernehme, entsteht im email dann bei der nachricht nach jedem return eine leerzeile.

jetzt ist die frage wie ich diese leerzeilen wird entfernen kann!

plz help

  1. Hallo,

    wenn ich dieses formmail http://selfaktuell.teamone.de/tippstricks/php/form-mail/index.htm hernehme, entsteht im email dann bei der nachricht nach jedem return eine leerzeile.

    Du meinst, wenn Du in einer Textarea Zeilenumbrueche machst,
    dann hat es auch im Mail an der Stelle einen Zeilenumbruch?
    Das ist doch gut, denn dann kann ein Benutzer seine Nachricht
    auch in ein paar Abschnitte gliedern. Wenn Du diese Zeilenumbrueche
    entfernst, hast Du nur noch einen langen Text-Wurm.

    Dass zwischen den einzelnen "Variablen" (Formularfeldern) _ein_
    Zeilenumbruch steht, ist ja Absicht; er wird eingefuegt durch
    das "\n" am Schluss der Zeile:

    foreach($value as $value_arry)
       {
        $mailtext .= "$name$delimiter$value_arry\n";
       }

    jetzt ist die frage wie ich diese leerzeilen wird entfernen kann!

    Zeilenumbrueche sind je nach Betriebssystem codiert mit \n, \r\n oder \r,
    siehe http://www.tiptom.ch/homepage/faq.html?q=zeilenumbruch

    Entferne also diese Zeichen aus dem String, bevor Du ihn an
    den Mailtext anfuegst. Oder besser: Ersetze die Zeichen durch
    Leerzeichen. Sonst kleben die Woerter, die vorher durch einen
    Zeilenabstand getrennt waren, ploetzlichaneinander.

    PHP-Manual: String-Funktionen:
    http://www.php.net/manual/de/ref.strings.php

    Gruesse,

    Thomas

    1. nein du hast mich flasch verstanden:

      ich meine wenn ich in der textarea return drücke wird dann im mail ein zeilenumbruch gemacht (so soll es auch sein) aber es wird zusätzlich eine leerzeile geschrieben und die möchte ich entfernen.

      1. Hi,

        ich habe das selbe Problem. Ich habe auch einen Antwort-Text, der so ähnlich aussieht:

        $anworttext="Hallo Du,
        Blöablablabja\nZeile2 des Textets
        Zeile3 mit leerzeile";

        Ausgabe:

        "Hallo Du,

        bldfölgadjlfgöbafdg
        Zeile2 des Textes

        Zeile3 mit leerzeile"

        Ich bin auch am Rätseln!!!

        Greets

        P.S.
        Ich habs mal mit str_replace versucht. Seit dem klappts. Evtl mußt Du noch andere Umbrüche ("<br>") austauschen gegen "einfache" Zeilenumbrüche "\n"

        $Text=str_replace("\\n","\n",$Text);

        1. sorry für diese blöde frage aber:

          wie weißt du welchen wert $antworttext hat?
          gibts da vielleicht sowas ähnliches wie einen debugger?