Gebruik van meerdere if statements in sendmail.php
In mijn sendmail valideer ik of e-mail geldig is en of de overige 2 velden in ieder geval 1 teken bevatten:
Code (php)
1
2
3
4
5
6
2
3
4
5
6
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$email = $_POST['email'];
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
if( $_POST['name'] || $_POST['message'] && strlen($value)<1 ) {
$email = $_POST['email'];
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
if( $_POST['name'] || $_POST['message'] && strlen($value)<1 ) {
Als waarde true is, wordt mijn formulier verstuurd.
Als waarde false is wordt lege pagina getoond (script stopt).
Mijn vraag: kan deze combinatie van 3x if zonder else of 'hoort' dit niet?
Guido
Wel altijd haakjes gebruiken bij de combinatie van or en and
if(... or (... and ...)) is wat anders dan if((... or ...) and ...)
Stond een foutje in validatie van 2 velden, moet zijn:
Guido
Gewijzigd op 06/11/2015 13:57:25 door Guido -
Guido vd L op 06/11/2015 13:33:23:
Vreemde vergelijking.
Als de stringlengte van (variabele AND variabele) groter dan nul is.
Ingevuld:
Als de stringlengte van ('Jan' AND 'Hallo') groter dan nul is.
Dit zal dan wel correct moeten zijn:
Thanks!
Toevoeging op 07/11/2015 01:40:45:
Zoals je ziet heb ik nu 3 if statements onder elkaar.
Dit werkt prima maar kan zoals jullie aangeven zeker netter.
Wie kan me even op weg helpen want het lukt mij zelf niet om deze 3 netjes te integreren.
Of is nu wel prima zo?
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$email = $_POST['email'];
if(filter_var($email, FILTER_VALIDATE_EMAIL)) {
$name = strip_tags($_POST['name']);
$message = strip_tags($_POST['message']);
if( strlen($name) >0 && strlen($message) >0 ) {
$email = $_POST['email'];
if(filter_var($email, FILTER_VALIDATE_EMAIL)) {
$name = strip_tags($_POST['name']);
$message = strip_tags($_POST['message']);
if( strlen($name) >0 && strlen($message) >0 ) {
(ik gebruik strip_tags want content van bericht is text/plain)
Gewijzigd op 07/11/2015 01:42:52 door Guido -