[Funktion] Formatierung von Variabelnausgabe - in einer Email

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

  • [Funktion] Formatierung von Variabelnausgabe - in einer Email

    Hi Leuts,

    Da in der Beschreibung für dieses Forum steht es ist auch für PHP Neulinge, schildere ich hier mal mein Problem:

    Ich habe ein freies Formular + Formmailerscript in eine Homepage eingebunden und angepasst. Funktioniert alles soweit wunderbar, hab nur ein Problem bei der Ausgabe der im Formular eingegebenen Daten.

    Im Formular ist für Name, Sraße usw. jeweils eine eigene Zeile vorhanden, das soll auch so bleiben.
    In der Ausgabe will ich aber ein Adressfeld haben.

    Hier der Code des Formmailers [COLOR=crimson]edit[/COLOR] ohne die Variabeln Definiton von $http_referer,$email,$hintergrundfarbe usw.:
    PHP-Code:
    <?
    echo '
    <html>
    <head>
    <title>Formmailer</title>
    </head>
    <body bgcolor="' . $hintergrundfarbe . '">
    <font face="' . $font . '" color="' . $fontcolor . '">';
    if ($HTTP_REFERER == $ref)
    {
        $mailinhalt = $header."\r\n";
        while (list($feld,$inhalt) = @each($HTTP_POST_VARS))
        {
           
                $mailinhalt .= strtr($feld,"_"," ").":\r\n";
                
                $mailinhalt .= $inhalt."\r\n\r\n";
            
        }
        if (isset($break))
        {
            die($feld_fehlt[1]);
        }
        else
        {
            $mailinhalt .= $footer;
            mail($email,$betreff,$mailinhalt,$absender);
            echo $danke;
        }
    }
    if ($HTTP_REFERER != $ref)
    {
        echo $error[0];
    }
    if (!$HTTP_REFERER)
    {
        echo $error[1];
    }
    echo '
    <p><a href="JavaScript:history.back()">back</a>
    </font>
    </body>
    </html>';
    ?>
    Dieser Code produziert folgende Email:

    Name:
    Hier steht der eingetragene Name

    Firma:
    ""

    Strasse:
    ""

    Ort:
    ""

    Telefon:

    usw.

    Ich hätte gerne eine Ausgabe die so ausschaut:

    Mustermann
    Musterfirma
    Teststr. 23

    55555 Musterhausen


    Telefon:
    374774

    Telefax:
    234234

    Mail:
    Ab@abc.de

    Die Ausgabe wird jawohl in folgenden Codezeilen erledigt:

    $mailinhalt .= strtr($feld,"_"," ").":\r\n";
    $mailinhalt .= $inhalt."\r\n\r\n";

    Soweit blick ich durch. Nur die ganzen Zusätze nach dem = sind mir ein Rätsel und im PHP Handbuch versteh ich ehrlich gesagt nur Bahnhof wenn ich mir die Erläuterung zu "strtr" durchlese...

    Kann mir vielleicht jmd freundlicherweise einen Hinweis geben wie ich die Variabeln aus dem Formular als Adressfeld ausgeben kann?
    Nach der Ausgabe des Adressfelds kann die Schleife? weiterlaufen und den Rest (Tel,Fax usw) wie in der alten Version ausgeben.

    mhm hoffe das alles ist verständlich und Danke im vorraus für die Hilfe/Hinweise

    Copyright des ursprünglichen Formulars/Formmailers:
    // CSS Formmailer, Copyright 2001 by CSS J.Hoffmann
    Zuletzt geändert von anconrad; 25.08.2006, 17:08.

  • #2
    Ja, auch neulinge sind willkommen.

    Ich kann mir aber nicht vorstellen, was man an
    strtr -- Tauscht bestimmte Zeichen aus
    nicht verstehen kann.

    es wird halt der _ durch ein Leerzeichen ersetzt. Mehr macht das nicht.

    Du musst verstehen, was das Script macht. Versuche nachzuvollziehen, wie die Felder der reihe nach in die E-Mail kommen, dann bist du in der Lage das ganze zu erweitern.

    Kommentar


    • #3
      Danke für die schnelle Antwort,

      Hab ja versucht das Script (ist ja nur ein Miniteil) komplett zu verstehen, aber bei der Ausgabe in der Email bin ich hängengeblieben, deswegen hab ich ja hier gepostet.

      Ich mach noch ein paar Testläufe...

      Deine Erklärung/erste Zeile im Handbuch zu "strtr" klingt wirklich einfacher als
      Diese Funktion gibt eine Kopie von str zurück, in der alle Vorkommen jedes Zeichens von from in das korrespondierende Zeichen in to umgewandelt wurde.
      Zuletzt geändert von anconrad; 25.08.2006, 17:22.

      Kommentar


      • #4
        meine ist die kurzform ausm manual. aber dein zitat klingt auch nicht so schwer.

        kannst du denn nun ein konkretes problem nennen, bei dem wir dir helfen können?

        Kommentar


        • #5
          das konkrete Problem ist diese Adressfeldausgabe,

          Die Variabeln/Daten Name,Firma,Straße,Ort aus dem Formular sollen in der Email über den Formmailer in einem "Block ausgegeben werden: [COLOR=crimson]edit hab die & Zeichen weggemacht - weiß auch nicht ob man die Daten aus dem Formular im Sinne von PHP Variabeln nennt[/COLOR]

          Mustermann
          Musterfirma
          Teststr. 23

          55555 Musterhausen

          Danach kann die Ausgabe wie jetzt weitergehen:
          Telefon:
          374774

          Telefax:
          234234

          Mail:
          Ab@abc.de

          Im Moment weiß ich nicht wie ich die $mailinhalt erweitern/umschreiben soll, damit das gewünschte Ausgabeformat in der Email rauskommt.
          Zuletzt geändert von anconrad; 25.08.2006, 17:38.

          Kommentar

          Lädt...
          X