wie schleife mail()
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ausgabe
betreff
code
dank
dienen
email
funktion
gestellt code
nachricht
parameter
postfach
problem
schleife
sender
sinn
support
tag
text
transfer
type
-
hallo,
ich bin mir nicht ganz sicher ob das nicht in "lima-city algemain" forum gehört.
ich hab einen mail befehl in eine whie() tag/schleife">schleife gestellt:
<?php include("../db.php"); $betreff = $_POST["betreff"] ; $text = $_POST["nachricht"] ; $sender = $_POST["name"] ; $serndermail = $_POST["mail"] ; if (empty($sendermail)) { $sendermail = "xxx@xyz.de" ; }; $extra = "From: $sender <$sendermail>\n"; $extra .= "Content-Type: text/html\n Content-Transfer-Encoding: 8bit\n"; while($ausgabe=mysql_fetch_array(mysql_query("SELECT * FROM newsletter"))) { mail("$ausgabe[email]", $betreff, $text, $extra); } print ("Newsletter erfolgreich versendet!"); ?>
problem 1: ich bekomme jetze pro tag 50 mails
problem 2: natürlich, wie ich die schleife ändern muss das er nicht unendlich sendet
danke im voraus
artemis
p.s.: es hantelt sich wie zu sehen um ein newsletter script
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ersetze
durchmysql_fetch_array
undmysql_fetch_assoc
durch"$ausgabe[email]"
$ausgabe['email']
reimann schrieb:
Na, das muss doch einzeln durchlaufen werden.
Ich seh den Sinn von der while Schleife genereall nicht.
Wozu soll die dienen?
mysql_fetch_array() liefert ohne zusätzlichen Parameter kein assoziatives Array zurück, welches du verwenden willst. Mit dem Parameter würde es mysql_fetch_assoc() entsprechen, weswegen man dieses auch gleich verwendet. -
danke, und wie soll ich das endlos e-mail problem lösen? mit ner mail anden lima support? oder giebts ne andre möglihkein?
-
Du könntest SMTP nutzen. Über die mail()-Funktion sind bei Lima pro Account nur 50 E-Mails pro Tag zu gelassen. Sendest du beispielsweise 120 gleichzeitig, dann werden 50 sofort verschickt, am nächsten Tag wieder 50 und am übernächsten Tag dann noch die letzten 20. An dem letzten Tag hast du dann also noch 30 frei. Bei SMTP benötigst du ein E-Mail-Postfach, welches diesen Mail-Versand unterstützt. Damit kannst du dann unendlich viele E-Mails verschicken. Um an ein solches Postfach zu kommen gibt es viele Wege. Bei Lima kannst du dir dadurch, dass du dir eine Domain kaufst oder ersteigerst unendlich viele Postfächer anlegen. Viele Freemail-Anbieter unterstützen das auch. Erkundige dich mal, wer SMTP kostenlos unterstützt.
-
<?php include("../db.php"); $betreff = $_POST["betreff"] ; $text = $_POST["nachricht"] ; $sender = $_POST["name"] ; $serndermail = $_POST["mail"] ; if (empty($sendermail)) $sendermail = "xxx@xyz.de" ; $extra = "From: $sender <$sendermail>\n"; $extra .= "Content-Type: text/html\n Content-Transfer-Encoding: 8bit\n"; $result = mysql_query("SELECT * FROM newsletter"); while($ausgabe=mysql_fetch_array($result)) { mail("$ausgabe[email]", $betreff, $text, $extra); } print ("Newsletter erfolgreich versendet!"); ?>
Damit sollte die Endlos-Email-Schleuder erledigt sein. Die bereits bestehenden Mails wirst du entweder aussitzen oder vom Lima-Support löschen lassen müssen.
@drafed-map's ersten Post oben: Sorry, aber so ziemlich alles was ich da lese stimmt schlicht nicht. Schau dir mal bitte die PHP-Dokumentation bzgl. der MySQL-Funktionen an. Das Problem war hier ein ganz anderes. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage