Ankündigung

Einklappen
Keine Ankündigung bisher.

Variablen in Email

Einklappen

Neue Werbung 2019

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

  • Variablen in Email

    Hi ich habe ein Problem.
    Ich habe eine php Seite die eine Html-Email versenden, was auch funktioniert. Nun möchte ich gerne in die Html-Email noch variablen reinpacken, nur weiß ich nicht genau, wie ich dass machen muss.
    Also in die email.html sollen noch die Variablen Name,Auslauf und Tage.
    PHP-Code:
    function emailversenden($Name,$Email,$Auslauf,$Tage)
     {
         require_once 
    "Mail.php";

         
    $from "****";
         
    $to "****";
         
    $subject "****";
         
    $bodyfile_get_contents('email.html');
         
    $host "*****";
         
    $port "*****";
         
    $username "****";
         
    $password "****";

         
    $headers = array ('From' => $from,'To' => $to,'Subject' => $subject);
         
    $smtp Mail::factory('smtp',array ('host' => $host,'port' => $port,'auth' => true,'username' => $username,'password' => $password));
         
    $mail $smtp->send($to$headers$body);

        if (
    PEAR::isError($mail)) {
               echo(
    "<p>" $mail->getMessage() . "</p>");
          }
          else {
               echo(
    "<p>Message successfully sent!</p>");
          }
     } 
    mfg
    pon


  • #2
    Füge den Inhalt doch Manuell hinzu anstatt ihn aus der email.html zu importieren.

    Also:
    PHP-Code:
    $body"Hallo Herr ".$name.", hiermit erhalten Sie unseren Newsletter. ..." 

    Kommentar


    • #3
      Benutzer platzhalter in der email.html wie z.B. {$name} und ersetze sie mit str_replace.

      //sorry zu langsam. Hatte ne Hummel zum Quadrat in meinem Zimmer die ich rausscheuchen musste
      sigpic

      Kommentar


      • #4
        das manuel importieren hab ich extra nicht gemacht, weil es eine sehr lange html mail mit vielen tabellen und so ist und somit unübersichtlich wird, aber mit dem str_replace kenne ich mich nicht aus, da mach ich mcih mal schlau drüber und frag dann nochmal nach wens nicht klappt

        Kommentar


        • #5
          Mit file_get_contents() einlesen und Variablen gegen Werte austauschen. Die Definition der Variablen bleibt dir überlassen (z.B. %_VAR_NAME_%).

          PHP-Code:
          $content file_get_contents('template.html');
          $replace = array(
              
          "%_VAR_NAME_%" => "Vorname Nachname",
              
          "%_VAR_EMAIL_%" => "emailadresse@domain.de"
          );
          $content str_replace(array_keys($replace), $replace$content); 
          Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

          Kommentar


          • #6
            Sende dir mal selbst so eine Email zu und stelle in deinem Client ein "Alle Emails als Nur-Text lesen". Bei einigen Clients wirst du nichts angezeigt bekommen.
            Grund dafür ist, dass du nur einen HTML-Teil (email.html) aussendest und keinen Alternativtext.
            PHP-Code:
            if ($var != 0) {
              
            $var 0;

            Kommentar

            Lädt...
            X