foreach op lege velden geeft onverwacht resultaat
Goedenavond,
ik heb een register script.
4x een input veld
deze wil ik door middel van foreach laten controleren of ze leeg zijn.
Function
Echter als ik veld 1 niet leeg houd dan geeft die een OK dus met andere woorden hij controleert de overige velden niet.
Mis ik iets?
Met vriendelijke groet,
ik heb een register script.
4x een input veld
deze wil ik door middel van foreach laten controleren of ze leeg zijn.
Code (php)
Function
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
Echter als ik veld 1 niet leeg houd dan geeft die een OK dus met andere woorden hij controleert de overige velden niet.
Mis ik iets?
Met vriendelijke groet,
zodra je een return gebruikt wordt de functie verlaten/afgebroken, ook als je in een (foreach) lus zit. Die else moet dus gewoon weg en die return TRUE; moet na de foreach lus komen.
Code (php)
Gewijzigd op 19/05/2016 19:55:27 door Frank Nietbelangrijk
Moet regel 5 niet zijn: $Func->is_empty($fields) != FALSE
Verder doe je binnen is_empty ook al een return op regel 6 en 8. Moet je dat niet doen nadat alle velden zijn gecheckt? Dus na de foreach. En geeft de return op regel 6 een FALSE of TRUE als waarde?
Verder vind ik het verwarrend dat de functie is_empty TRUE als resultaat heeft als de variabele niet empty is.
Verder doe je binnen is_empty ook al een return op regel 6 en 8. Moet je dat niet doen nadat alle velden zijn gecheckt? Dus na de foreach. En geeft de return op regel 6 een FALSE of TRUE als waarde?
Verder vind ik het verwarrend dat de functie is_empty TRUE als resultaat heeft als de variabele niet empty is.
Wees voorzichtig met empty(). Als een gebruiker een '0' ingeeft in een veld dan zegt empty() nog steeds dat het veld leeg is!
Ik vermijd empty() om deze reden liever en gebruik dan strlen().
Toevoeging op 19/05/2016 20:02:54:
Ben het met je eens Jan maar ik zou al helemaal geen functienaam is_emtpy gebruiken. Ik zou een functienaam gebruiken als validate of validateForm of iets dergelijks.
Ik vermijd empty() om deze reden liever en gebruik dan strlen().
Toevoeging op 19/05/2016 20:02:54:
Jan de Laet op 19/05/2016 19:58:03:
Verder vind ik het verwarrend dat de functie is_empty TRUE als resultaat heeft als de variabele niet empty is.
Ben het met je eens Jan maar ik zou al helemaal geen functienaam is_emtpy gebruiken. Ik zou een functienaam gebruiken als validate of validateForm of iets dergelijks.
Gewijzigd op 19/05/2016 20:12:16 door Frank Nietbelangrijk
Heel erg bedankt voor jullie reacties.
Ik ga ermee bezig ook met de functienaam.
Zal idd iets moeten zijn als validateForm zodat er meerder forms op die manier gecontroleerd kunnen worden.
Nu heb ik is_empty en andere validaties dat kan wel in 1.
Ik ga ermee bezig ook met de functienaam.
Zal idd iets moeten zijn als validateForm zodat er meerder forms op die manier gecontroleerd kunnen worden.
Nu heb ik is_empty en andere validaties dat kan wel in 1.




