Brauche Hilfe bei Mail-Script

4nDy

Angesehenes Mitglied
Hallo,

habe ebend meine Datenbank angesehen und möchte nun per Script etwa 21 000 Mails an meine User senden, da der Server mit sicherheit abk**** würde, wenn ich es ohne Zwischenpausen machen würde, habe ich mir da was mit sleep gedacht.

Aber wenn ich z.B.


CODE $last = $row['id'];

if($last == 50)
{
sleep(5);
}


benutzen würde, dann hieße das ja förmlich:

Wenn ID 50 erreicht ist, schläft er für 5 Sekunden. Aber er würde dann sicher von neuem anfangen und das ist ja nicht der Sinn der Sache
wink.gif


Sicher wissen hier viele rat...
 
welchen Effekt erhoffst du durch den "sleep"? Bedenke, dass dabei die Auführungsdauer vom Skript erhöht wird, sodass du dann irgendwann nen Timout bekommst.

Versuche:

mittels META-Refresh den Skript jedesmal neu zustarten:

CODE <meta http-equiv="refresh" content="1; URL=http://SCRIPT.php?id=($_GET['id']+50)">


Dabei würde er bei jedem Aufruf sich automatisch um 50 erhöhen. content="1.. bewirkt dass die Seite 1sek. angehalten wird (genügend "sleep")

In der MYSQL Abfrage dann per Limit (-Offset) arbeiten.

 
QUOTE (guwapo @ So 18.2.2007, 2:58) welchen Effekt erhoffst du durch den "sleep"? Bedenke, dass dabei die Auführungsdauer vom Skript erhöht wird, sodass du dann irgendwann nen Timout bekommst.

Versuche:

mittels META-Refresh den Skript jedesmal neu zustarten:


CODE <meta http-equiv="refresh" content="1; URL=http://SCRIPT.php?id=($_GET['id']+50)">


Dabei würde er bei jedem Aufruf sich automatisch um 50 erhöhen. content="1.. bewirkt dass die Seite 1sek. angehalten wird (genügend "sleep")

In der MYSQL Abfrage dann per Limit (-Offset) arbeiten.

Hallo,

danke erstmal für deine Antwort, jedoch würde das ja nur bewirken, dass z.B. wenn das Script 1 Eintrag bearbeitet hat, es bei 51 weiter macht.


Cron-Job: Es geht nicht darum wie ich es ausführe!
 
QUOTE (4nDy @ So 18.2.2007, 12:48) Hallo,

danke erstmal für deine Antwort, jedoch würde das ja nur bewirken, dass z.B. wenn das Script 1 Eintrag bearbeitet hat, es bei 51 weiter macht.


Cron-Job: Es geht nicht darum wie ich es ausführe!

Deswegen solltest du ja mit dem LIMIT Befehl arbeiten. Damit kannst du einerseits den "Offset" einstellen und auch die "Anzahl" von Datensätzen die er auspucken soll.

Ich glaube das wäre so: LIMIT $_GET[id], 50

natürlich muss die Datenabfrage in einer Schleife sein, damit er diese 50 Einträge auch bearbeitet.
 
Zurück
Oben