Email senden (um schnelle Hilfe)zu viele Mails
-
Hey an Alle,
brauche dringend Hilfe, ich habe einen Code geschrieben!
Leider Fehlerhaft, da er mir jetzt endlos viele Mails senden ... kein ende!<?php $result = mysql_query("SELECT `email` FROM `login`"); while($row = mysql_fetch_array($result)) { $empfaenger ="meien addy@live.de"; $absender = "absender@absender.de"; $betreff = "Test Mail"; $text = "hie mein Text"; if (!mail($empfaenger, $betreff, $text,"from:$absender")) print "Mail an " . $empfaenger . " konnte nicht gesendet werden!<br />"; echo ($row[0]."<br>"); } mysql_free_result($result); ?>
Habe den Code ausgeführt jetzt sendet er mir endlose Emails! WIESOO
-
- narf quark ..
-
wie bitte?
-
ach da oben stand nur quark (von mir)
formatier erstmal deinen querystr sauber
-
wie kann ich das machen?
ohne das ich in phpmyadmin mich einlooge?
Geht das?
-
Hallo,
er schickt nicht endloc viele Mails. Er schickt soviele wie es Datensätze in der Tabelle `login` gibt. Jeder Schleifendurchlauf arbeitet einen Datensatz ab. Bei 10 Schleifendurchläufen, gibt es also 10 Datensätze und ebenso 10 EMails. Viele Datensätze sind in deiner Tabelle?
VlG
-
ich weiß ich weiß.... das er nach meinen Datensätzen schaut, was nur komisch ist ich hab doch alles gelöscht!
mysql_query("DELETE FROM `login`");
damit muss er doch alles gelöscht haben? oder
-
Jupp!
Du hast doch echo($row[0]) im Code stehen! Was gibt er denn aus?
VlG
-
nichts leere Seite!
-
Nichts? Dann werden auch keine Mails gesendet! Wenn keine Datensätze in der Tabelle sind, wird die Schleife übersprungen und somit werden auch keine EMails gesendet. Weiß Gott wo die EMails bei dir herkommen :p
-
doch es wird was gesendet da ich $empgänger = "meineaddy@live.de eingetragen habe!
also er sollte gar nicht auf meine Datenbank zugreifen deswegen hab ich meine addy eingetragen (nicht in die Datenbank eingetragen)
-
Ok, nochmal langsam! Du sagst du hast NULL (0) Datensätze in der Tabelle. Sie ist also gänzlich leer?! Sollte dem so sein, so wird folgender Teil:
while($row = mysql_fetch_array($result)) { // .... dein code .... }
komplett übersprungen und gar nicht abgearbeitet. Dementsprechend werden auch keine Mails gesendet!
Mach mal:
$result = mysql_query("SELECT * FROM login"); print mysql_num_rows($result);
Und teile uns dann mit was angezeigt wird.
-
Komisch
1. Wenn ich alle Datensätze gelöscht habe
2. Wenn ich die Datei auch gelöscht habe
sollte doch nichts passieren
3. Er senden trotzdem noch und die mails landen im Spam Ordner.... und die mails kommen immer in minuten takten... so etwa 20 mails mehr nicht
würde auch sowas gehen?while(res)){
if(!mail($data['email'], $betreff, absender"))
echo "Mail konnte nicht an {data['email']} gesendet werden"; } mysql\_free\_result(res);
-
Das ist doch genau das gleiche was du schon hast
Kann es sein, dass die EMails aus früheren Versuchen sind und jetzt erst ankommen?
-
0 ist das Ergebnis
$result = mysql_query("SELECT * FROM login"); print mysql_num_rows($result);
-
hmmz schrieb:
Das ist doch genau das gleiche was du schon hast
Kann es sein, dass die EMails aus früheren Versuchen sind und jetzt erst ankommen?
ich vermute ja!
und evtl. gabs da noch Datensätze.. 100% weiß ich es nicht mehr!am Browser kann es nicht liegen? Chrome? oder was heißt cronejob?
-
kann man es irgendwie stoppen?
ich bekomme fast jede Minute immer 5 Mails :S
-
Wenn 0 das Ergebnis ist, dann kommen die EMails definitiv nicht aus diesem Code. Was die Ursache für den Massenversand ist, weißt nur du.
Mach mal langsam
Grundsätzlich sind Chrome und CronJob('s) zwei Grund verschiedene Dinge.
Chrome ist ein Browser. CronJobs sind sind eine Art "geplante Aufgaben" (Tasks). also ToDo's die meist in immer wiederkehrenden Zeitabständen ausgeführt werden (sollen). Cronjobs benutzt man also wenn man möchte das etwas bestimmtes (ein CGI- / PHP- / Perl- Script, oder auch eine Anwendung) in regelmäßigen Abständen und|oder an bestimmten Zeitpunkten ausgeführt werden soll.
-
chrome i know
cronejob noch nie gehört bzw ka wie man das einrichtet...ich habe jeglich nur diesen code benutz, mehr nicht!
$empfaenger ="kollege@live.de"; $absender = "absender@absender.de"; $betreff = "Test Mail"; $text = "hie mein Text"; if (!mail($empfaenger, $betreff, $text,"from:$absender")) print "Mail an " . $empfaenger . " konnte nicht gesendet werden!>"; echo ($row[0]."<br>"); } <br> mysql_free_result($result)
seitdem ich das ausgeführt habe, sendet er mir pausenlos die mails...
ich wollte einen Arbeitskollegen was zeigen...
bzw von seiner adresse an seiner adresse eine email senden, jetzt bekommt er die mails jede minute 5 mal etwa... und kein plan wieso! zum glück im junk ordner
-
wie kann es den sein, dass er mir immer noch welche sendet? :S