Ik heb een eenvoudig formulier dat dient om mails te sturen naar emailadressen die staan opgeslagen in een database.
Het formulier laat toe om een selectie te maken van groepen. Bijvoorbeeld het eerste leerjaar, het tweede leerjaar,... Na het verzenden komt er een tabel op het scherm met de emailadressen en namen van personen naar wie de mails zijn verstuurd.
Het loopt echter een beetje fout als ik iedereen selecteer. Een groep bestaat uit maximum 30 e-mailadressen. 'Iedereen' selecteren is echter een 500-tal e-mails dat worden verstuurd. Na het verzenden, moet ik even wachten (mails worden dan verstuurd), maar daarna kom ik niet op de pagina waar de tabel met namen en adressen staat, maar krijg ik een white screen of death. Er worden echter wel mails verstuurd, maar ik weet niet ofdat iedereen de mail wel heeft aangekregen.
Hieronder een stuk van mijn code:
<?php
if($naar=="Alle leden"){
$leden=mysql_query("SELECT Naam, Voornaam, Email FROM Leden WHERE ($seizoen='Ja' || $seizoen='Neen')");
while($lid=mysql_fetch_array($leden)){
$naam=$lid['Naam'];
$voornaam=$lid['Voornaam'];
$email=$lid['Email'];
if(mail($email, $onderwerp, $msg, $headers)==true){
$succes=true;
}
else{
$succes=false;
}
$maillist[]=array("$naam","$voornaam","$email","$succes");
}
}
?>
Deze code werkt perfect met een klein aantal e-mail adressen. Ik vermoed dat de mail-functie in php het probleem veroorzaakt, omdat die bij elke mail zijn protocols opent en sluit. Hierdoor duurt het tamelijk lang voordat de browser verder kan en er waarschijnlijk een time-out error wordt gecreeerd. Maar hiervan heb ik geen kennis.
Kan iemand mij hierbij helpen?
Alvast bedankt
Steven
1.076 views