webForumDet fria alternativet

Något fel på min mailfunktion?

PHP

7 svar · 662 visningar · startad av streetrobban

Medlem sedan jan. 20011 140 inlägg
Frågan#1

Hej!

Helt plötsligt har det slutat fungera att skicka mail från min webhost (som jag hyr). Men jag kan inte förstå varför, är det något fel på nedanstående kod?

<?php
// Mottagare
$to = "test@hotmail.com";

// Ämne
$subject = "Tjenare!";

// Meddelande
$message = "Detta är ett testmail.";

// Skicka HTML?
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

// Avsändare
$headers = "From: John Doe <info@johndoe.se>";

// Och, skicka mailet!
mail($to, $subject, $message, $headers);

echo "$to, $subject, $message, $headers";
?>
Medlem sedan jan. 2005953 inlägg
#2
// Avsändare
$headers = "From: John Doe <info@johndoe.se>";

skriver över det tidigare värdet i $headers.

Har du kollat i spam-mappen? Du skickar inte med en fullständig uppsättning headers vilket kan göra att mailet betraktas som spam.

Medlem sedan juni 20001 251 inlägg
#3

Hotmail har blivit kinkigare och tar i många fall inte emot e-post alls, testa helst en e-postadress som inte hostas av hotmail först.

Medlem sedan mars 20034 471 inlägg
#4

metalboy skrev:

Du skickar inte med en fullständig uppsättning headers vilket kan göra att mailet betraktas som spam.

Hur ser en fullständig uppsättning ut? (Jag har ett liknande problem...)

stevenet skrev:

Hotmail har blivit kinkigare och tar i många fall inte emot e-post alls, testa helst en e-postadress som inte hostas av hotmail först.

:q Hm... Vitsen med denna mailklient torde vara marginell om de inte tar emot några ebrev... :p Antar att det mer handlar om automatgenererade diton, eller?

Medlem sedan jan. 20011 140 inlägg
#5

Tack för svaren!

Jag ändrade till följande kod istället på headers:

// Skicka HTML?
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

// Avsändare
$headers .= "From: John Doe <info@johndoe.se>";

Oavsett om jag mailar till hotmail eller någon annan host så kommer inget mail. Och skräppostmappen är tom.

Medlem sedan mars 20034 471 inlägg
#6

Om du ändrar texten i mailet från att vara ett test till något liknande det du fakriskt tänker skicka, hjälper det? Kanske fastnar mailet i spamkontroll före inboxen? Är det din brevlåda? Du har inte ställt in att blocka alla brev från hotmail, väl?

Medlem sedan mars 20041 505 inlägg
#7

Använd en mer avancerad mail-klass istället, det underlättar verkligen.
Det finns många bra som sätter kompletta headers som Hotmail m.fl. uppskattar bättre.
Sen är det ju alltid roligare att använda en objektorienterad klass istället för att hålla på att klistra ihop strängar.
Jag rekommenderar Zend_Mail. Jag skickar till Hotmail med den och än så länge har mailen gått fram.

Medlem sedan jan. 20011 140 inlägg
#8

Tack för era svar. Det var fel på webbhotellet. Så när jag ringt och klagat fixade de problemet. Och då ramlade det in ca 50 mail från tidigare dagar när jag testat :)

266 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)