datenbankinhalt in fputs angeben
daniel
- php
hallo,
ich habe mal wieder ein kleines anfängerproblemchen ;-)
ich würde gern einen einfachen newsletter basteln,
für den man sich auf der seite anmelden kann.
die empfänger-email-adressen werden also in eine DB geschrieben und sollen dann dort, wo normalerweise die empfänger-mails angeben werden, wieder ausgegeben werden.
konkret sieht das so aus:
$fp = popen("/usr/sbin/sendmail -t","w");
fputs($fp, "To: *HIER SOLLEN DANN DIE ADRESSEN AUS DER DB STEHEN* \n");
fputs($fp, "From: <www.baseball-cheerleading.de>baseball-cheerleading.de \n");
fputs($fp, "Subject: Newsletter"\n\n");
fputs($fp, "Newslettertext");
pclose($fp);
wenn es um das auslesen von einer DB geht,
das krieg ich ja noch hin , aber wie krieg ich das in das TO: feld?
btw: wenn ich abressatenadressen als BCC angeben will, wie mach ich das? das "To: " gegen "BCC" zu tauschen , hat irgendwie nicht geklappt ;-)))
vielen dank für eure hilfe,
bitte versucht es einfach zu erklären, ich habe mit PHP erst angefangen ;-)
grüße daniel
Hi,
wenn es um das auslesen von einer DB geht,
das krieg ich ja noch hin , aber wie krieg ich das in das TO: feld?
indem Du aus den Werten eine Variable join()st.
btw: wenn ich abressatenadressen als BCC angeben will, wie mach ich das? das "To: " gegen "BCC" zu tauschen , hat irgendwie nicht geklappt ;-)))
Irgendein To: wird halt gebraucht...
bitte versucht es einfach zu erklären, ich habe mit PHP erst angefangen ;-)
Mehr als einen Zaunpfahl gibt's trotzdem nicht ;-)
Cheatah
hi cheatah,
erstmal danke für den zaunpfahl... ;-))
also, join() "klebt" also ein array in ein einzelne Variable zusammen?
und ein trennzeichen läßt sich auch angeben, wenn ich das richitg verstanden habe.
aber wiso klappt das dann nicht?
$query=("SELECT email FROM newsletter");
$base = mysql_query($query);
echo "NEUER NEWSLETTER WURDE GESENDET AN: <br>";
while ($row = mysql_fetch_row($base))
{
$to = implode(" , ",$row);
echo $to;
}
join "klebt" mir zwar die felder aus $row zusammen,
aber ohne trenner ???
$to gibt mir sowas in der art aus:
email1@gmx.deemail2@gmx.deemail3@gmx.de...
nur das "," fehlt???
wo liegt da nun mein denkfehler???
vielleicht noch ein wink mit dem zaunpfahl... ;-))) ?
danke im voraus !!
daniel
Huhu Daniel
$query=("SELECT email FROM newsletter");
$base = mysql_query($query);
echo "NEUER NEWSLETTER WURDE GESENDET AN: <br>";
while ($row = mysql_fetch_row($base))
{
$to = implode(" , ",$row);
Zaunpfahl -> wieviele Elemente hat das Array $row?
echo $to;
}
Viele Grüße
lulu
while ($row = mysql_fetch_row($base))
{
$to = implode(" , ",$row);
Zaunpfahl -> wieviele Elemente hat das Array $row?
hmmm? bei jedem schleifendurchlauf wohl nur ein element ?
nämlich $row[0]?
aber wie bekomme ich jetzt diese verd* werte in eine reihe??
gibts da nicht irgendeine funktion dafür?
grüße daniel
Huhu daniel
aber wie bekomme ich jetzt diese verd* werte in eine reihe??
eine Möglichkeit ist es die Werte innerhalb der Schleife zu sammeln und danach per implode auszugeben.
$stack=array();
while ($row = mysql_fetch_row($base)){
$stack[]=$row[0];
}
$to= implode(" , ",$stack);
Viele Grüße
lulu
yipiiiiee, es klappt ;-))
vielen dank...
ich lag gar nicht soooo verkehrt mit meinen versuchen hier !
auf die idee, $row[0] nochmal in ein anderes array zu schreiben
kam ich auch... aber ich hatte einfach $row[0]=$stack[]
statt umgekehrt.
naja, das macht wohl die erfahrung.. ;-))
danke auf jeden fall !!!
grüße daniel