Jag har plötsligt fått ett intressant problem på halsen. Jag har ett registreringsformulär på min hemsida. Man registrerar användarnamn, (lösen) och epostadress. För att man inte ska kunna djävlas kräver jag en bekräftelse på att epostadressen är den egna, genom att inloggning ej funkar förrän man bekräftat mottagande av en kod skickad till den angivna adressen. (Precis som vanligt m.a.o. .) Detta har fungerat utmärkt för merparten av mina besökare. Men... plötsligt visar det sig att det inte fungerat för en enda person som registrerat sig med en epostadress från AOL just?!? De verkar aldrig få bekräftelsebrevet med koden i? Vad kan det vara som är fel? :q
Har AOL en speciellt aggressiv spamstopp som sållar bort sådana brev? I åtminstonde ett fall vet jag att personen letade efter brevet även i spam-mappen - utan resultat.
Kan det finnas något som helst rimligt skäl att tro att servern inte skickar mail till aol just? Och returnerar mail(...) verkligen true om den inte ens skickar mailet? Det gör den väl inte?
Om den inte returnerar true borde nämligen JAG få ett mail som talar om att något gick snett vid skickandet, och det har jag inte fått. Eller, är det något fel på koden nedan? :q
Alla idéer om var felet troligtvis uppstår mottages tacksamt! :)
//Relevant del av skriptet:
$qNew = "INSERT INTO ... <min db-tabell>";
//Så långt är allt grönt. De finns i db:n
$res = mysql_query($qNew) or die("Couldn't create new member.".sorryDB());
echo "<H1>Welcome, $anvNamn!</H1>";
echo "<P>Successfully created " . mysql_affected_rows() . " new visitor (".$anvNamn.")!</P>";
$message = "Hi, ".$anvNamn."!\n\n";
$message .= "... <bekräftelseinfo med namn och kod och URL> \n\n";
$message .= "Don't reply to this email as it is automatically generated. ....";
//Kan raden ovan trigga spamstopp hos AOL just?
$OK = mail("$epost", "Confirm membership, please!", "$message");
if (!$OK) {
mail("mig@server.xx", "Confirm membership, wasn't sent", "Didn't go: $message");
echo "An unexpected problem occured while sending the confirmation message. Admin has been notified.";
}
else echo "An email has been dispatched to your email address with a confirmation link.
As soon as you follow that link back here, your account will start to work. <BR>";