/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Sikre at mail bliver sendt med mail()
Fra : Morten Trab


Dato : 27-03-03 22:45

Hvordan kan jeg sikre at en mail bliver afsendt med mail() funktionen...

Bruger den til en mailing-liste, men den fejler, somom det går forhurtigt
når den trækker E-Mail adresser ud af MySQL databasen, og det er derved ikke
alle der modtager en mail...

Det er vilkårligt hvem der ikke modtager mails, og der er ikke nogle fejl i
de adresser der står i databasen...

--
Mvh. Morten Trab
--
Svar venligst kun i NG, med mindre det er MEGET vigtigt.
Ved mail, slet REMOVE i min adresse.

Web: http://www.blackchart.dk



 
 
Henrik Stidsen (28-03-2003)
Kommentar
Fra : Henrik Stidsen


Dato : 28-03-03 00:17

"Morten Trab" <mortenREMOVE@trab.dk> wrote in
news:1048801492.84621.0@doris.uk.clara.net

> Hvordan kan jeg sikre at en mail bliver afsendt med mail()
> funktionen...

Det eneste du kan gøre er at checke om den bliver afleveret til
MTA´en:
"mail() returns TRUE if the mail was successfully accepted for
delivery, FALSE otherwise." (php.net)

> Bruger den til en mailing-liste, men den fejler, somom det går
> forhurtigt når den trækker E-Mail adresser ud af MySQL
> databasen, og det er derved ikke alle der modtager en mail...
>
> Det er vilkårligt hvem der ikke modtager mails, og der er ikke
> nogle fejl i de adresser der står i databasen...

Har du checket at det ikke et er problem på MTA´en ? - tvivler på det
kan lade sig gøre at hive dataen for hurtigt ud, PHP går jo ikke
videre i strukturen før den har udført det den skal.

--
..: Henrik Stidsen - HS235.dk - http://hs235.dk ::...
"You know the world is going crazy when the best rapper is a white
guy, the best golfer is a black guy, France is accusing the US of
arrogance and Germany doesn't want to go to war."

Peter Brodersen (28-03-2003)
Kommentar
Fra : Peter Brodersen


Dato : 28-03-03 01:30

On Thu, 27 Mar 2003 23:16:44 +0000 (UTC), Henrik Stidsen
<idontwantnospam@hs235.dk> wrote:

>Det eneste du kan gøre er at checke om den bliver afleveret til
>MTA´en:
>"mail() returns TRUE if the mail was successfully accepted for
>delivery, FALSE otherwise." (php.net)

Bemærk dog, at FreeBSD'er i tidens løb har haft tendens til alligevel
at returnere FALSE her, selvom mailen fint bliver afleveret (og sendt
afsted).

--
- Peter Brodersen

Morten Trab (05-04-2003)
Kommentar
Fra : Morten Trab


Dato : 05-04-03 08:15

"Henrik Stidsen" <idontwantnospam@hs235.dk> skrev i en meddelelse
news:Xns934C2B98AD4HS235DK@130.225.247.90...

> Det eneste du kan gøre er at checke om den bliver afleveret til
> MTA´en:
> "mail() returns TRUE if the mail was successfully accepted for
> delivery, FALSE otherwise." (php.net)

Har nu lavet TRUE / FALSE check i mit script og det har ikke hjulpet
synderligt meget...

Får denne fejl når jeg prøver at sende via listen:

Warning: Failed to Receive in f:\oldtimerklubben\web\admin\mass_mail.php on
line 40
xxxxxxxxxxxxxx@image.dk modtog ikke mailen, forsøger igen -
Warning: Failed to Receive in f:\oldtimerklubben\web\admin\mass_mail.php on
line 44
xxxxxxxxxxxxxx@image.dk modtog stadig ikke mailen, der er et eller andet
galt og der forsøges ikke igen.

Linierne omkring dette punkt er som flg. i scriptet:

} elseif ($m == "send") {
require("../include/gen_func.inc.php");

$subject = "OTK-Mail: ".$subject;
$headers = "From: ".$from."\r\n";
// $headers .= "Bcc: ".$rec_list."\r\n";

$result = mysql_query("SELECT * FROM Medlemmer ORDER BY UID");
while ($row = mysql_fetch_array($result)) {
if (mail($row[EMail], $subject, $body, $headers)) { // Linie 40 (Første
fejl kommer her)
echo "Mail afsendt til ".$row[EMail]."<br>\n";
} else {
echo $row[EMail]." modtog ikke mailen, forsøger igen -";
if (mail($row[EMail], $subject, $body, $headers)) { // Linie 44 (Anden
fejl kommer her)
echo "Mail afsendt til ".$row[EMail]."<br>\n";
} else {
echo $row[EMail]." modtog stadig ikke mailen, der er et eller andet
galt og der forsøges ikke igen.<br>\n";
}
}
}
// header("location: index.php");
}

Efter hvad jeg kan se er det min mail-server der ikke vil modtage, men
hvordan kan det være...Har aldrig haft det her problem før, og har altid
brugt MDeamon som server...

--
Mvh. Morten Trab
--
Svar venligst kun i NG, med mindre det er MEGET vigtigt.
Ved mail, slet REMOVE i min adresse.

Web: http://www.blackchart.dk



Kim Emax (28-03-2003)
Kommentar
Fra : Kim Emax


Dato : 28-03-03 01:00

Morten Trab wrote:

> Bruger den til en mailing-liste, men den fejler, somom det går
> forhurtigt når den trækker E-Mail adresser ud af MySQL databasen, og
> det er derved ikke alle der modtager en mail...

Det her har ikke så meget med dit problem at gøre, men et godt råd Du
kan tænke over at sende alle mails i BCC, hvis der er tale om en stor liste,
der er jo noget timeout fra webserveren at tage hensyn til. Du misser
selvfølgelig så uligheden for at smide personlige beskeder med til
modtageren.

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Jonas Koch Bentzen (28-03-2003)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 28-03-03 09:14

Kim Emax wrote:
>
> Du
> kan tænke over at sende alle mails i BCC, hvis der er tale om en stor liste

I den forbindelse er det ofte blevet nævnt, at mange SMTP-servere har en
grænse for hvor mange modtagere, der må være på en enkelt mail. De
gange, det er blevet nævnt, har folk ikke kunnet sige et præcist tal, så
derfor vil jeg da lige nævne, at jeg forleden undersøgte, hvor mange
modtagere Postfix som standard accepterer. Den accepterer 50, hvilket
altså betyder, at der må være 49 BCC-modtagere (og så én modtager i
Til-feltet, som ifølge RFC'en vistnok *skal* udfyldes).


Kim Emax (28-03-2003)
Kommentar
Fra : Kim Emax


Dato : 28-03-03 12:39

Jonas Koch Bentzen wrote:

> I den forbindelse er det ofte blevet nævnt, at mange SMTP-servere har
> en grænse for hvor mange modtagere, der må være på en enkelt mail. De
> gange, det er blevet nævnt, har folk ikke kunnet sige et præcist tal,
> så derfor vil jeg da lige nævne, at jeg forleden undersøgte, hvor
> mange modtagere Postfix som standard accepterer. Den accepterer 50,
> hvilket altså betyder, at der må være 49 BCC-modtagere (og så én
> modtager i Til-feltet, som ifølge RFC'en vistnok *skal* udfyldes).

Tak, det er en nyttig information... jeg sender pt ud til omkring 100 på en
liste... Ved du om der kommer en fejlmeddelse, warning, hvordan man kan
teste det eller hvor man ændrer dette antal, når du nu skriver "som
standard"?

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Jonas Koch Bentzen (28-03-2003)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 28-03-03 13:27

Kim Emax wrote:
> Jonas Koch Bentzen wrote:
>
>
>>I den forbindelse er det ofte blevet nævnt, at mange SMTP-servere har
>>en grænse for hvor mange modtagere, der må være på en enkelt mail. De
>>gange, det er blevet nævnt, har folk ikke kunnet sige et præcist tal,
>>så derfor vil jeg da lige nævne, at jeg forleden undersøgte, hvor
>>mange modtagere Postfix som standard accepterer. Den accepterer 50,
>>hvilket altså betyder, at der må være 49 BCC-modtagere (og så én
>>modtager i Til-feltet, som ifølge RFC'en vistnok *skal* udfyldes).
>
>
> Tak, det er en nyttig information... jeg sender pt ud til omkring 100 på en
> liste... Ved du om der kommer en fejlmeddelse, warning

Jeg har aldrig prøvet at overskride grænsen, så det ved jeg ikke.

> hvordan man kan
> teste det

Ved jeg heller ikke.

> eller hvor man ændrer dette antal, når du nu skriver "som
> standard"?

default_destination_recipient_limit = 100

http://www.postfix.org/rate.html#recipients


Henrik Stidsen (28-03-2003)
Kommentar
Fra : Henrik Stidsen


Dato : 28-03-03 14:06

"Kim Emax" <newsgroup@remove-emax.dk> wrote in
news:rvWga.1334$mI2.270556@news000.worldonline.dk

> Tak, det er en nyttig information... jeg sender pt ud til
> omkring 100 på en liste... Ved du om der kommer en fejlmeddelse,
> warning, hvordan man kan teste det eller hvor man ændrer dette
> antal, når du nu skriver "som standard"?

Hvis du deler op i 20-25 af gangen er der nok ikke den store chance
for fejl.

Jeg har selv sendt ud med 300 BCC modtagere i *en* mail - SMTP'en var
postfix.

--
..: Henrik Stidsen - HS235.dk - http://hs235.dk ::...
"You know the world is going crazy when the best rapper is a white
guy, the best golfer is a black guy, France is accusing the US of
arrogance and Germany doesn't want to go to war."

Jonas Koch Bentzen (28-03-2003)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 28-03-03 14:11

Henrik Stidsen wrote:
>
> Hvis du deler op i 20-25 af gangen er der nok ikke den store chance
> for fejl.

Chance for fejl? Jeg vil nærmere sige risiko... :)

> Jeg har selv sendt ud med 300 BCC modtagere i *en* mail - SMTP'en var
> postfix.

På den side, jeg omtalte, står der, at Postfix automatisk deler mailen
op i flere eksemplarer, hvis man sender mere end
$default_destination_recipient_limit. For afsenderen vil det jo stadig
føles som om, han/hun har sendt den én gang. Det er nok det, der er sket
i dit tilfælde (eller også var $default_destination_recipient_limit bare
sat højt på din server).


Kim Emax (28-03-2003)
Kommentar
Fra : Kim Emax


Dato : 28-03-03 15:03

Jonas Koch Bentzen wrote:

> På den side, jeg omtalte, står der, at Postfix automatisk deler mailen
> op i flere eksemplarer, hvis man sender mere end
> $default_destination_recipient_limit. For afsenderen vil det jo stadig
> føles som om, han/hun har sendt den én gang. Det er nok det, der er
> sket i dit tilfælde (eller også var
> $default_destination_recipient_limit bare sat højt på din server).

Fint, jeg var lige bange for at det var sådan at det kun var de første 50,
der så blev sendt.... men det er jo ikke et MS miljø, såeee...

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Henrik Stidsen (28-03-2003)
Kommentar
Fra : Henrik Stidsen


Dato : 28-03-03 23:01

Jonas Koch Bentzen <ingen.email@eksempel.dk> wrote in
news:b61hli$sd5$1@sunsite.dk

>> Hvis du deler op i 20-25 af gangen er der nok ikke den store
>> chance for fejl.
>
> Chance for fejl? Jeg vil nærmere sige risiko... :)

My bad

>> Jeg har selv sendt ud med 300 BCC modtagere i *en* mail -
>> SMTP'en var postfix.
>
> På den side, jeg omtalte, står der, at Postfix automatisk deler
> mailen op i flere eksemplarer, hvis man sender mere end
> $default_destination_recipient_limit. For afsenderen vil det jo
> stadig føles som om, han/hun har sendt den én gang. Det er nok
> det, der er sket i dit tilfælde (eller også var
> $default_destination_recipient_limit bare sat højt på din
> server).

Det er rigtigt ja, det kan jeg godt huske at jeg har rodet med at
indstille.
Når postfix modtager mailen med BCC'er kører den jo "trivial rewrite"
og omskriver den til enkelte mails til de enkelte modtagere. Der er
så de omtalte grænser for hvor mange connections til samme server den
vil lave for at undgå at blive opfattet som bulk mailer.
Så postfix laver altså gerne en mail om så der pludselig ligger 300
mails i køen istedet for en - og så sender den dem en af gangen
(okay, mange af gangen) til de enkelte modtager servere.

--
..: Henrik Stidsen - HS235.dk - http://hs235.dk ::...
"You know the world is going crazy when the best rapper is a white
guy, the best golfer is a black guy, France is accusing the US of
arrogance and Germany doesn't want to go to war."

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste