Email alleen verzenden als een veld leeg is
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
$email = htmlspecialchars($_POST["email"]);
$naam = htmlspecialchars($_POST["naam"]);
if (!$email) {
echo "U heeft geen emailadres ingevuld!";
exit; }
else {
$tijd = time();
$datum = strftime("%d/%m/%y %H:%M", $tijd);
$ip = getenv("REMOTE_ADDR");
$message = " IP adres $ip met e-mailadres " . $email . " wil zich inschrijven voor de nieuwsbrief";
$mailadres = "*****@chello.nl, webreply@*******.nl";
$message = str_replace ("<br>","\n", $message);
mail("$mailadres", "Bericht van formulier op Fitpointhelmond.nl",
$message, "From: " . $email . "");
echo header ("Location: /bedankt_inschrijven_nieuwsbrief.shtml");
}
?>
$email = htmlspecialchars($_POST["email"]);
$naam = htmlspecialchars($_POST["naam"]);
if (!$email) {
echo "U heeft geen emailadres ingevuld!";
exit; }
else {
$tijd = time();
$datum = strftime("%d/%m/%y %H:%M", $tijd);
$ip = getenv("REMOTE_ADDR");
$message = " IP adres $ip met e-mailadres " . $email . " wil zich inschrijven voor de nieuwsbrief";
$mailadres = "*****@chello.nl, webreply@*******.nl";
$message = str_replace ("<br>","\n", $message);
mail("$mailadres", "Bericht van formulier op Fitpointhelmond.nl",
$message, "From: " . $email . "");
echo header ("Location: /bedankt_inschrijven_nieuwsbrief.shtml");
}
?>
Hoe kan ik hem aanpassen dat de informatie alleen wordt doorgespeeld als het veld $naam leeg is?
Bij voorbaat dank :-)
- Aar -:
Mailadres uit voorzorg tegen spambots verwijderd.
Gewijzigd op 10/08/2014 20:57:00 door - Ariën -
Dankjewel Martin V. dat heb ik inderdaad ook al geprobeerd. Ik heb hem op verschillende plekken in de code proberen toe te passen, maar kreeg elke keer foutmeldingen. Ik ben ook nog niet echt handig met de syntax van PHP, met name wanneer er meerdere stukken code door elkaar gaan lopen...
Als je mailadres wilt controleren:
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
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
<?php
$email = htmlspecialchars($_POST["email"]);
$naam = htmlspecialchars($_POST["naam"]);
if (!$email) {
echo "U heeft geen emailadres ingevuld!";
exit; }
if(empty($naam)) {
$tijd = time();
$datum = strftime("%d/%m/%y %H:%M", $tijd);
$ip = getenv("REMOTE_ADDR");
$message = " IP adres $ip met e-mailadres " . $email . " wil zich inschrijven voor de nieuwsbrief";
$mailadres = "******@chello.nl, *******@********.nl";
$message = str_replace ("<br>","\n", $message);
mail("$mailadres", "Bericht van formulier op Fitpointhelmond.nl",
$message, "From: " . $email . "");
echo header ("Location: /bedankt_inschrijven_nieuwsbrief.shtml");
}
else {
echo "Er is iets mis gegaan!";
}
?>
$email = htmlspecialchars($_POST["email"]);
$naam = htmlspecialchars($_POST["naam"]);
if (!$email) {
echo "U heeft geen emailadres ingevuld!";
exit; }
if(empty($naam)) {
$tijd = time();
$datum = strftime("%d/%m/%y %H:%M", $tijd);
$ip = getenv("REMOTE_ADDR");
$message = " IP adres $ip met e-mailadres " . $email . " wil zich inschrijven voor de nieuwsbrief";
$mailadres = "******@chello.nl, *******@********.nl";
$message = str_replace ("<br>","\n", $message);
mail("$mailadres", "Bericht van formulier op Fitpointhelmond.nl",
$message, "From: " . $email . "");
echo header ("Location: /bedankt_inschrijven_nieuwsbrief.shtml");
}
else {
echo "Er is iets mis gegaan!";
}
?>
:-)
Tnx again!!!
Gewijzigd op 10/08/2014 21:39:13 door Christian van Lierop
Waarom maak je al die variabelen (regel 2/3 en 12-14, 15) aan?
Je headers van je mail zijn onvoldoende. Kan tot gevolg hebben dat mail in de spambox komt of niet aankomt.
Moet er een echo staan voor header op regel 22?
Wat je precies bedoelt met "Je headers van je mail zijn onvoldoende." weet ik helaas niet. Vooralsnog komt de mail tijdens het testen op het juiste adres aan...
In ieder geval bedankt voor het checken en voor de tips om de code op te schonen. Daar zal ik zeker mee aan de slag gaan!
Christian van Lierop op 11/08/2014 16:49:35:
Wat je precies bedoelt met "Je headers van je mail zijn onvoldoende." weet ik helaas niet. Vooralsnog komt de mail tijdens het testen op het juiste adres aan...
Door een onjuiste header kan een mail als spam worden aangemerkt of niet worden bezorgd, omdat er 'onderweg' het idee bestaat dat jouw mail niet voldoet aan standaard'eisen'.
Kijk eens op http://phpwiki.santhe.nl/index.php?title=De_juiste_mailheaders
Of kies voor eenvoud en gebruik de class phpmailer of swiftmailer.
Je kijkt namelijk helemaal niet of $_posr een (1) adres bevat
Stel er wordt aangeleverd
[email protected]
Cc:[email protected], [email protected]
dus met een enter.
Dan schiet jij dat zo de header in.
Dus piet en kees krijgen die mail ook.
Boeie, denk je?
Gaan we verder: subject kun je ook opnemen na bcc, gevolgd door 2 enters en een nieywe content
En voila een nieuwe server die spam vrrstuurt