PHP Mail - Gmail probleem
Ik heb een mail script die prima werkt met hotmail, echter als ik hem naar me Gmail wil versturen komt die niet binnen (ook niet in me spambox)
Heb van alles met de headers geprobeerd maar niks werkt, kan iemand mij verder helpen?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php
/* Editable entries are bellow */
$send_to = "[email protected]";
$send_subject = "Contact formulier van $f_name";
/*Be careful when editing below this line */
$f_name = cleanupentries($_POST["name"]);
$f_phone = cleanupentries($_POST["phone"]);
$f_email = cleanupentries($_POST["email"]);
$f_message = cleanupentries($_POST["message"]);
function cleanupentries($entry) {
$entry = trim($entry);
$entry = stripslashes($entry);
$entry = htmlspecialchars($entry);
return $entry;
}
$message = "Deze email is verzonden op " . date('d-m-Y') .
"\n\nNaam: " . $f_name .
"\n\nTelefoonnummer: " . $f_phone .
"\n\nE-Mail: " . $f_email .
"\nCommentaar: \n" . $f_message .
$send_subject .= " - {$f_name}";
$headers = "From: " . $f_email . "\n" .
"Reply-To: " . $f_email . "\n" .
"X-Mailer: PHP/" . phpversion();
if (!$f_email) {
echo "no email";
exit;
}else if (!$f_name){
echo "no name";
exit;
}else{
if (filter_var($f_email, FILTER_VALIDATE_EMAIL)) {
mail($send_to, $send_subject, $message, $headers);
echo "true";
}else{
echo "invalid email";
exit;
}
}
?>
/* Editable entries are bellow */
$send_to = "[email protected]";
$send_subject = "Contact formulier van $f_name";
/*Be careful when editing below this line */
$f_name = cleanupentries($_POST["name"]);
$f_phone = cleanupentries($_POST["phone"]);
$f_email = cleanupentries($_POST["email"]);
$f_message = cleanupentries($_POST["message"]);
function cleanupentries($entry) {
$entry = trim($entry);
$entry = stripslashes($entry);
$entry = htmlspecialchars($entry);
return $entry;
}
$message = "Deze email is verzonden op " . date('d-m-Y') .
"\n\nNaam: " . $f_name .
"\n\nTelefoonnummer: " . $f_phone .
"\n\nE-Mail: " . $f_email .
"\nCommentaar: \n" . $f_message .
$send_subject .= " - {$f_name}";
$headers = "From: " . $f_email . "\n" .
"Reply-To: " . $f_email . "\n" .
"X-Mailer: PHP/" . phpversion();
if (!$f_email) {
echo "no email";
exit;
}else if (!$f_name){
echo "no name";
exit;
}else{
if (filter_var($f_email, FILTER_VALIDATE_EMAIL)) {
mail($send_to, $send_subject, $message, $headers);
echo "true";
}else{
echo "invalid email";
exit;
}
}
?>
Dit is mijn code, alles is verbonden met Google Apps for Business, zie graag jullie hulp tegemoet!
E-mailadres aangepast[/modedit]
Gewijzigd op 26/06/2014 18:35:12 door Bas IJzelendoorn
Waarschijnlijk heb je nu getest met een Gmail-adres als afzender maar kan Google die verzonden mail niet terugvinden. Dat is voor Gmail helemaal verdacht, een mail afkomstig van Gmail die niet via Gmail werd verzonden, dus weg ermee.
Gewijzigd op 26/06/2014 16:30:07 door Furio Scripting
Ward van der Put op 26/06/2014 16:27:04:
Je maakt de standaardfout waarvoor spamfilters allergisch zijn omdat dit eindeloos vaak wordt misbruikt voor spam: een in een formulier ingevuld e-mailadres klakkeloos gebruiken als de afzender. Stel dit afzenderadres in op een e-mailadres van de webserver die het formulier verzendt.
Waarschijnlijk heb je nu getest met een Gmail-adres als afzender maar kan Google die verzonden mail niet terugvinden. Dat is voor Gmail helemaal verdacht, een mail afkomstig van Gmail die niet via Gmail werd verzonden, dus weg ermee.
Waarschijnlijk heb je nu getest met een Gmail-adres als afzender maar kan Google die verzonden mail niet terugvinden. Dat is voor Gmail helemaal verdacht, een mail afkomstig van Gmail die niet via Gmail werd verzonden, dus weg ermee.
Dat heeft geen verschil gemaakt voor mij!
Ik heb ook een hotmail adres gebruikt, dat werkte ook niet. Ben wel benieuwd wat je bedoeld met het volgende: Stel dit afzenderadres in op een e-mailadres van de webserver die het formulier verzendt.
Toevoeging op 26/06/2014 16:29:47:
Furio Scripting op 26/06/2014 16:29:01:
Wellicht dat het aan je onderwerp ligt want het lijkt alsof die $fnaam pas later geset wordt dus krijg je in je onderwerp: $fnaam ipv bijvoorbeeld Pieter Jan...
$f_name werkt prima in hotmail, dat is het probleem niet. But thanks for the feedback!
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php $to = '[email protected]';
$subject = 'onderwerp';
$message = 'jouw berichtje';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: afzender naam <[email protected]>';
mail($to, $subject, $message, $headers); ?>
$subject = 'onderwerp';
$message = 'jouw berichtje';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: afzender naam <[email protected]>';
mail($to, $subject, $message, $headers); ?>
Gewijzigd op 26/06/2014 16:32:42 door Furio Scripting
Furio Scripting op 26/06/2014 16:32:30:
Dit werkt bij mij voor Gmail en hotmail en andere...probeer dit eens:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php $to = '[email protected]';
$subject = 'onderwerp';
$message = 'jouw berichtje';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: afzender naam <[email protected]>';
mail($to, $subject, $message, $headers); ?>
$subject = 'onderwerp';
$message = 'jouw berichtje';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: afzender naam <[email protected]>';
mail($to, $subject, $message, $headers); ?>
Helaas ook niet!
[email protected] in als de afzender. Of een ander, liefst bestaand e-mailadres.
De open opzet die je nu gebruikt, kan worden misbruikt en wordt misbruikt. Je kunt nu [email protected] of [email protected] invullen in je formulier en daarmee mailen, maar daar gaan spamfilters natuurlijk niet intrappen.
Dat wordt nog een gradatie erger als je een Gmail-adres opgeeft als de afzender en de ontvanger ook een Gmail-adres heeft: Gmail kan dan namelijk zien dat die zogenaamd door een Gmail-account verzonden mail in werkelijkheid helemaal niet door een Gmail-account is verzonden. Weg ermee dus.
Simpel: wil je e-mail verzenden vanaf de webserver van example.com, stel dan De open opzet die je nu gebruikt, kan worden misbruikt en wordt misbruikt. Je kunt nu [email protected] of [email protected] invullen in je formulier en daarmee mailen, maar daar gaan spamfilters natuurlijk niet intrappen.
Dat wordt nog een gradatie erger als je een Gmail-adres opgeeft als de afzender en de ontvanger ook een Gmail-adres heeft: Gmail kan dan namelijk zien dat die zogenaamd door een Gmail-account verzonden mail in werkelijkheid helemaal niet door een Gmail-account is verzonden. Weg ermee dus.
Gewijzigd op 26/06/2014 16:36:26 door Ward van der Put
Ward van der Put op 26/06/2014 16:36:05:
Simpel: wil je e-mail verzenden vanaf de webserver van example.com, stel dan [email protected] in als de afzender. Of een ander, liefst bestaand e-mailadres.
De open opzet die je nu gebruikt, kan worden misbruikt en wordt misbruikt. Je kunt nu [email protected] of [email protected] invullen in je formulier en daarmee mailen, maar daar gaan spamfilters natuurlijk niet intrappen.
Dat wordt nog een gradatie erger als je een Gmail-adres opgeeft als de afzender en de ontvanger ook een Gmail-adres heeft: Gmail kan dan namelijk zien dat die zogenaamd door een Gmail-account verzonden mail in werkelijkheid helemaal niet door een Gmail-account is verzonden. Weg ermee dus.
De open opzet die je nu gebruikt, kan worden misbruikt en wordt misbruikt. Je kunt nu [email protected] of [email protected] invullen in je formulier en daarmee mailen, maar daar gaan spamfilters natuurlijk niet intrappen.
Dat wordt nog een gradatie erger als je een Gmail-adres opgeeft als de afzender en de ontvanger ook een Gmail-adres heeft: Gmail kan dan namelijk zien dat die zogenaamd door een Gmail-account verzonden mail in werkelijkheid helemaal niet door een Gmail-account is verzonden. Weg ermee dus.
Ja is opzich leuk gezegd, alleen ik gebruik Google Apps, dus al mijn email adressen worden beheerd door Google ook de [email protected] adres. ;)
Je reageert op een reactie die er direct boven staat. Dan heeft het toch geen enkele waarde om alles te citeren?!
Mail van [email protected] kan ook via een andere weg verzonden zijn dan via Google, al heb je ingesteld dat al je mailadressen worden beheerd door Google.
Maar heb je het al geprobeerd?
Verder wordt doorgaans aangeraden om swiftmailer of phpmailer te gebruiken; juist om dit soort problemen te voorkomen. Daarbij wordt opgemerkt dat het verstandig/beter is om een mailadres te gebruiken dat gekoppeld is aan het domein.
Verder zou ik je mailadres even uit je post halen. Anders krijg je straks mail waar je niet om gevraagd hebt.