Modul Autoresponder für eMail Workshop
Verfasst: Do 12. Apr 2007, 09:21
Wir haben für einen Kunden ein neues Modul erstellt. Trägt sich ein Kunde in den Newsletter ein, erhält er noch eine zusätzliche eMail (Double-Opt-In) um sich für einen 5-tägigen eMail-Workshop anzumelden. Bestätigt der Kunde, dass er teilnehmen möchte, landet er per Hyperlink auf der Bestätigungsseite die folgendes Modul beinhaltet:
k=Kursname, m=Mailadresse und u=Username. Das Modul schreibt in eine Textdatei dann folgende Informationen: "101-13606~mail@domain.net~Wolfgang Kundler". Die Datei "emailkursanmeldung.txt" beinhaltet nur die eMail-Adresse. Erst wenn ein Kunde die Anmeldung per Mausklick in der eMail bestätigt, landen die Informationen in der Datei "emailkursteilnehmer.txt".
Es funktioniert eigentlich alles perfekt bis auf die Tatsache, dass jede Anmeldebestätigung drei Zeileneinträge liefert. Eigentlich sollte die Schleife nach dem ersten erkennen stoppen, trägt aber dennoch jede Anmeldebestätigung dreimal ein. Dann bekommen die User natürlich auch drei eMails. Sehr ärgerlich! Keine Ahnung warum? Sieht jemand wo das Problem liegt?
Anschauen und testen kann man das ganze hier.
Gruss aus Bayern
Code: Alles auswählen
<?php
$pfad="upload/emailkurs/"."CMS_VALUE[0]";
$kursanmeldung=fopen($pfad.'/emailkursanmeldung.txt','r');
$starttag=intval(floor(time()/(24*3600)));
$usermail=trim($_GET['m']);
$username=ereg_replace("_", " ", trim($_GET['u']));
$username=ereg_replace("ä", "ä", $username);
$username=ereg_replace("ö", "ö", $username);
$username=ereg_replace("ü", "ü", $username);
$username=ereg_replace("Ä", "Ä", $username);
$username=ereg_replace("Ö", "Ö", $username);
$username=ereg_replace("Ü", "Ü", $username);
$username=ereg_replace("ß", "ß", $username);
$kursname=trim($_GET['k']);
$kursid=intval(substr($kursname,2,4));
$flag="false";
do {
if ($usermail==trim(fgets($kursanmeldung)) && $flag=="false")
{
$flag="true";
$kursteilnehmer=fopen($pfad.'/emailkursteilnehmer.txt','a+');
fwrite($kursteilnehmer,"$kursid-$starttag~$usermail~$username\r\n");
fclose($kursteilnehmer);
break;
}
}
while (!feof($kursanmeldung) && $flag=="false");
fclose($kursanmeldung);
?>
Es funktioniert eigentlich alles perfekt bis auf die Tatsache, dass jede Anmeldebestätigung drei Zeileneinträge liefert. Eigentlich sollte die Schleife nach dem ersten erkennen stoppen, trägt aber dennoch jede Anmeldebestätigung dreimal ein. Dann bekommen die User natürlich auch drei eMails. Sehr ärgerlich! Keine Ahnung warum? Sieht jemand wo das Problem liegt?
Anschauen und testen kann man das ganze hier.
Gruss aus Bayern