Newsletter
Chris
- php
Hi zusammen,
Hab mir nen Newsletter geschrieben der soweit alle aufgaben erfüllt ausser die mails versenden*g*
Hier der auszug vom Script:
if($senden)
{
$mitglieder = fopen("user.dat","a+");
$mitglieder=fread($mitglieder,1024);
$empfaenger=explode("|",$mitglieder);
$tag = date("d.m.Y");
$betreff = "Newsletter";
$header = "MIME-Version 1.0\r\n".
"Content-type: text/html; charset=iso-8859-15\r\n".
"From : Webmaster@Dynamicwebpower.de";
for($i=0;$i<10;$i++)
{
mail($empfaenger[$i],$betreff,$text,$header);
}
}
die dazugehörige user.dat sieht so aus:
TEST@TEST.com|
TEST@TEST.com|
TEST@TEST.com|
Hoffe das mir jemand sagen kann was ich falsch mache!?
Danke an alle...
MfG chris
Hab vergessen dabei zusagen das mir das Script keinen Fehler zurück gibt...
MfG Chris
Hi.
Mein Vorschlag: (nicht getestet)
if($senden)
{
$mitglieder = file("user.dat");
$tag = date("d.m.Y");
$betreff = "Newsletter";
$header = "MIME-Version 1.0\r\n".
"Content-type: text/html; charset=iso-8859-15\r\n".
"From : Webmaster@Dynamicwebpower.de";
while(list($i,$empfaenger) = list($mitglieder))
mail($empfaenger[$i],$betreff,$text,$header);
}
die dazugehörige user.dat sieht so aus:
TEST@TEST.com
TEST@TEST.com
TEST@TEST.com
Ansonsten empfehle ich, zum Debuggen sich die Variablen zwischendrinnen per echo/print bzw. Arrays per print_r() anzeigen zu lassen, so kann man feststellen, ob der Inhalt stimmt.
MfG, Arne P.
Ups, ein Fehler:
while(list($i,$empfaenger) = list($mitglieder))
mail($empfaenger[$i],$betreff,$text,$header);
muß heißen
while(list($i,$empfaenger) = list($mitglieder))
mail($empfaenger,$betreff,$text,$header);
MfG, Arne P.
Hi,
Habs eingebaut, und hat geklappt..
Danke
MfG Chris
Ups, ein Fehler:
while(list($i,$empfaenger) = list($mitglieder))
mail($empfaenger[$i],$betreff,$text,$header);
muß heißen
while(list($i,$empfaenger) = list($mitglieder))
mail($empfaenger,$betreff,$text,$header);
Da steckt noch einer:
while(list($empfaenger,$i) = each($mitglieder))
mail($empfaenger,$betreff,$text,$header);
Klappen tuts damit aber leider nicht )-;
Neuer Versuch:
if($senden)
{
$mitglieder = fopen("user.dat","r");
$mitglieder=fread($mitglieder,1024);
$empfaenger=explode("|",$mitglieder);
$z=count($empfaenger);
$tag = date("d.m.Y");
$name = "Webmaster";
$email = "Webmaster@DynamicWebPower.de";
$betreff = "Newsletter";
$header = "From: '$name', '$email'\n";
for($i=1;$i<$z;$i++)
{
echo "($empfaenger[$i] , $betreff , $text , $header)";
}
echo "Es wurden $z Mitglieder angeschrieben!";
}
Im test mit echo gibt mir das Script den Header Samt informationen"empfaenger,betreff,text,header" zurück..Also alles richtig würd ich sagen, problem ist aber sobald ich das echo"" gegen mail() austausche und das ganze auf den Sever lade läuft das Script durch ohne Fehler, aber die eMails kommen nicht an..)-;
MfG, Chris
MfG, Arne P.