Personalisierte mails in PHP ????

Dieses Thema im Forum "Software allgemein" wurde erstellt von stephan2000, 17. März 2003.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. stephan2000

    stephan2000 Kbyte

    Registriert seit:
    7. Februar 2002
    Beiträge:
    198
    Brauche Personalisierte HTML mails

    Ich habe folgendes Problem. Ich versende Serienmails mit der mail($an, $betreff, $text, $header) Funktion. Dazu weise ich dem "an" über eine while Schleife und der Funktion mysql_fetch_array die einzelnen email-Adressen zu. Diese sind natürlich in einer Mysql-Datenbank.
    ###
    while($reihe = mysql_fetch_array($result)) {
    $empfaenger .= $reihe["email"] . ",";
    }

    $an = $empfaenger ;

    ###
    Dem Text wird ein HTML-Text zugewiesen (dem header wird noch mitgeteilt das es sich um eine HTML mail handelt)

    $text = <html>
    <head> Mega Newsletter </head>
    <body>
    <p>Hallo Name hier ist dein Newsletter</p>
    <p>Tschüss</p>
    </html>

    Das Problem das ich habe ist, ich benötige einen personalisierten Newsletter.
    Fehler 1 Bisher rufe einmal die Funktion mail in der Form mail (adresse1, adresse2, ... , ) auf. Ich weiß zwar das das falsch ist, ich weiss aber nicht wie ich es besser machen kann.
    Brauche irgendwie einen Aufruf der die Funktion mail ( ) für jede Adresse neu versendet und über next() das jeweils nächste Element des Arrays benutzt.
    Meine Grundidee war die mit @mysql_num_rows($result) einen Zähler festzulegen #####
    $sql_numrows = @mysql_num_rows($result);
    $counter = 0;
    $loop = $sql_numrows;
    #####
    und anschließend über while die die mail-Funktion immer wieder aufzurufen:
    #####
    while($counter <= $loop)
    { $counter++;
    mail($to,
    $subject,
    $message,
    $xtra);
    }
    Das hat aber nicht geklappt, vor allem ist das Hauptproblem damit noch nicht gelöst in der HTML mail ist ja auch noch einmal ein Array das irgendwie mit next weitelaufen soll.
    Wer kann mir helfen??
    Bitte nicht irgendwie eine komplett andere Lösung vorschlagen (ohne Mysql oder so etwas)
     
  2. stephan2000

    stephan2000 Kbyte

    Registriert seit:
    7. Februar 2002
    Beiträge:
    198
    Hi Matthias,
    dein Vorschlag hat gelappt, vielen Dank. Warum ich es nicht gleich so gemacht habe? Weil ich ein php Anfänger bin und manchmal gar nicht weiss was ich das mache. Aber ich werde langsam besser.
    Gruss Stephan
     
  3. Bigfoot 2002

    Bigfoot 2002 Megabyte

    Registriert seit:
    11. August 2002
    Beiträge:
    1.776
    Wenn du in "Web Know How" postest lese ich es garantiert :-)
    Da hätte ich eher nach sowas gesucht, eventuell auch noch unter "Programmieren". Naja zum Glück sind noch andere da ;-)
     
  4. kalweit

    kalweit Hüter der Glaskugel

    Registriert seit:
    18. April 2000
    Beiträge:
    31.468
    anrede\']." bla blub...."
    und nun der normale Mail-Befehl. Das machst php automatisch so lange wie im $result Daten sind.

    "pear" ist eine Scriptsammlung für php die ab 4.irgendwas automatisch mitinstalliert wird, sich aber auch auf beliebigen Webspace mit php-Unterstützung (braucht keinen root-Zugriff) nachinstallieren lässt. Unter anderem beinhaltet diese Sammlung eine felxieble Klasse zum einfachen Versenden von Mails.

    Gruss, Matthias
     
  5. stephan2000

    stephan2000 Kbyte

    Registriert seit:
    7. Februar 2002
    Beiträge:
    198
    Mit personalisieren ist folgendes gemeint.
    Name Hans Meier, e-mail h.meier123@blub.com,
    Name Peter Müller, e-mail zorro@zack.de, usw. Dann sieht der e-mail Text so bei Herrn Meier so aus: "Guten Tag Herr Hans Meier, heute gibt}s Newsletter" und beim Herrn Müller so :"Guten Tag Herr Peter Müller, heute gibt}s Newsletter". Der email Text ist also bei jeder e-mil anders, er enthält Variablen für die Ansprache. Alles klar ? Was meinst du mit "Such mal nach "pear"???
    Gruss Stephan
     
  6. kalweit

    kalweit Hüter der Glaskugel

    Registriert seit:
    18. April 2000
    Beiträge:
    31.468
    Also irgenwie versteh ich nicht was du da versuchst. Warum versendest du die Mails nicht direkt aus der ersten Schleife? Was meinst du mit Personalisieren? Such mal nach "pear" - hat eine lecker Mail-Klasse.

    $result=MYSQL_QUERY( "SELECT * FROM blabla");
    while($row = mysql_fetch_row($result))
    {
    $adresse=$row[bla1];
    $empfaenger=$row[bla2];
    // hier Mailtext basteln
    // hier -> mail(.....);
    }

    Gruss, Matthias
     
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen