Mail wordt niet altijd verstuurd
Ik heb een begin php script gemaakt maar deze stuurt niet naar mijn gmail of skynet account.
Zou iemand kunnen zeggen wat ik verkeerd staan heb?
Hopelijk weet iemand raad :-(
Gr
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
$naar = '[email protected],[email protected]'; // Waar moet het naartoe?
$bcc = '[email protected]';
$van = '[email protected]'; // email van waar het komt, deze zelf ingesteld.
$onderwerp = 'gegevens'; // Het onderwerp van het bericht
// Header instellen, zodat nl2br() werkt (als je deze gebruikt dan zal het niet naar gmail sturen)
// SSWI - Always set content-type when sending HTML email
$headers = 'MIME-version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
if(isset($_POST['versturen'])) // Als het formulier verzonden is door op de verzend knop te klikken
{
$NAAM_OF_FIRMA_ = trim($_POST['NAAM_OF_FIRMA_']); // Alle overbodige spaties uit het naam veld verwijderen
$FACTURATIE_ADRES_ = trim($_POST['FACTURATIE_ADRES_']); // Alle overbodige spaties uit het naam veld verwijderen
$NR_ = trim($_POST['NR_']); // Alle overbodige spaties uit het naam veld verwijderen
$POSTCODE_ = trim($_POST['POSTCODE_']); // Alle overbodige spaties uit het naam veld verwijderen
$PLAATS_ = trim($_POST['PLAATS_']); // Alle overbodige spaties uit het naam veld verwijderen
$BTW_NR_ = trim($_POST['BTW_NR_']); // Alle overbodige spaties uit het naam veld verwijderen
$TELEFOON_GSM_ = trim($_POST['TELEFOON_GSM_']); // Alle overbodige spaties uit het naam veld verwijderen
$E_MAIL_ADRES_ = trim($_POST['E_MAIL_ADRES_']); // Alle overbodige spaties uit het naam veld verwijderen
// message
$message = '<html><body>';
$message .= "Naam of firma: " . $NAAM_OF_FIRMA_ . "<br>";
$message .= "Facturatie adres: " . $FACTURATIE_ADRES_ . "<br>";
$message .= "Nummer: " . $NR_ . "<br>";
$message .= "Postcode: " . $POSTCODE_ . "<br>";
$message .= "Plaats: " . $PLAATS_ . "<br>";
$message .= "BTW-nr.: " . $BTW_NR_ . "<br>";
$message .= "Telefoon / GSM: " . $TELEFOON_GSM_ . "<br>";
$message .= "E-mailadres: " . $E_MAIL_ADRES_ . "<br>";
$message .= "</body></html>";
if($fout == false) // Als er niks fout is (alles is dus netjes ingevuld)
{
//$headers .= 'From: ' . $naam . '<' . $email . '>'; // Een afzender instellen zodat je kan reageren.
$headers .= 'From: ' . $van . "\r\n"; // Een afzender instellen zodat je kan reageren.
$headers .= 'Bcc: ' . $bcc; // Een ontvanger in bcc zetten.
//if(mail($naar, $onderwerp, nl2br("gegevens\nBericht: $Bericht\nNaam of firma: $NAAM_OF_FIRMA_\nAdres: $Adres\nPostnr_gemeente: $Postnr_gemeente\nE-Mail: $E_Mail"), $headers))
if(mail($naar, $onderwerp, $message, $headers))
{
//print '<p>Het bericht is succesvol verzonden!</p>';
print(file_get_contents("gegevens_verzonden_bedankt.htm"));
}
else
{
print '<p>Helaas, er is wat fout gegaan tijdens het verzenden van het formulier.</p>';
}
}
}
?>
$naar = '[email protected],[email protected]'; // Waar moet het naartoe?
$bcc = '[email protected]';
$van = '[email protected]'; // email van waar het komt, deze zelf ingesteld.
$onderwerp = 'gegevens'; // Het onderwerp van het bericht
// Header instellen, zodat nl2br() werkt (als je deze gebruikt dan zal het niet naar gmail sturen)
// SSWI - Always set content-type when sending HTML email
$headers = 'MIME-version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
if(isset($_POST['versturen'])) // Als het formulier verzonden is door op de verzend knop te klikken
{
$NAAM_OF_FIRMA_ = trim($_POST['NAAM_OF_FIRMA_']); // Alle overbodige spaties uit het naam veld verwijderen
$FACTURATIE_ADRES_ = trim($_POST['FACTURATIE_ADRES_']); // Alle overbodige spaties uit het naam veld verwijderen
$NR_ = trim($_POST['NR_']); // Alle overbodige spaties uit het naam veld verwijderen
$POSTCODE_ = trim($_POST['POSTCODE_']); // Alle overbodige spaties uit het naam veld verwijderen
$PLAATS_ = trim($_POST['PLAATS_']); // Alle overbodige spaties uit het naam veld verwijderen
$BTW_NR_ = trim($_POST['BTW_NR_']); // Alle overbodige spaties uit het naam veld verwijderen
$TELEFOON_GSM_ = trim($_POST['TELEFOON_GSM_']); // Alle overbodige spaties uit het naam veld verwijderen
$E_MAIL_ADRES_ = trim($_POST['E_MAIL_ADRES_']); // Alle overbodige spaties uit het naam veld verwijderen
// message
$message = '<html><body>';
$message .= "Naam of firma: " . $NAAM_OF_FIRMA_ . "<br>";
$message .= "Facturatie adres: " . $FACTURATIE_ADRES_ . "<br>";
$message .= "Nummer: " . $NR_ . "<br>";
$message .= "Postcode: " . $POSTCODE_ . "<br>";
$message .= "Plaats: " . $PLAATS_ . "<br>";
$message .= "BTW-nr.: " . $BTW_NR_ . "<br>";
$message .= "Telefoon / GSM: " . $TELEFOON_GSM_ . "<br>";
$message .= "E-mailadres: " . $E_MAIL_ADRES_ . "<br>";
$message .= "</body></html>";
if($fout == false) // Als er niks fout is (alles is dus netjes ingevuld)
{
//$headers .= 'From: ' . $naam . '<' . $email . '>'; // Een afzender instellen zodat je kan reageren.
$headers .= 'From: ' . $van . "\r\n"; // Een afzender instellen zodat je kan reageren.
$headers .= 'Bcc: ' . $bcc; // Een ontvanger in bcc zetten.
//if(mail($naar, $onderwerp, nl2br("gegevens\nBericht: $Bericht\nNaam of firma: $NAAM_OF_FIRMA_\nAdres: $Adres\nPostnr_gemeente: $Postnr_gemeente\nE-Mail: $E_Mail"), $headers))
if(mail($naar, $onderwerp, $message, $headers))
{
//print '<p>Het bericht is succesvol verzonden!</p>';
print(file_get_contents("gegevens_verzonden_bedankt.htm"));
}
else
{
print '<p>Helaas, er is wat fout gegaan tijdens het verzenden van het formulier.</p>';
}
}
}
?>
Edit:
Titel aangepast van 'Formulier op site' naar 'Mail wordt niet altijd verstuurd'
Gewijzigd op 09/09/2017 16:45:17 door - Ariën -
En waar komt $fout vandaan?
Denk dat het zoiets moet worden:
$afzender = "[email protected]";
if(mail($naar, $onderwerp, $message, $headers, "-f$afzender"))
Heb zelf meegemaakt dat sommige providers de mail blokken als deze laatste afzender niet meegestuurd wordt.
Nog even een korte vraag.
Kennen of hebben jullie ook een site waar ik veel meer over php kan leren?
Alvast bedankt