On Wed, 2004-04-07 at 18:47, Andy B wrote:
I have this very large and long if statement: if (!empty($_SESSION['add']['type']) && !empty($_SESSION['add']['start_date'] && !empty($_SESSION['add']['end_date']) && !empty($_SESSION['add']['name']) && !empty($_SESSION['add']['county']) && !empty($_SESSION['add']['discription']) && !empty($_SESSION['add']['StartingDay']) && !empty($_SESSION['add']['StartingMonth']) && !empty($_SESSION['add']['StartingYear']) && !empty($_SESSION['add']['EndingDay']}) && !empty($_SESSION['add']['EndingMonth']) && !empty($_SESSION['add']['EndingYear'])) {//run the insert query} else {//show error since one or more fields above are blank} was wondering if there was really any way to condense that down to something any better? all fields in the form that those came from are required...
$errors = array(); foreach( $_SESSION['add'] as $key => $value ) { if( isempty( $value ) ) { $errors[] = "You forgot to fill $key." } }
if( count( $array ) ) { echo 'Hey MORON! You have the following errors:<br />'; echo '<ul>' .'<li>' .implode( '</li><li>', $errors ); .'</li>' .'</ul>'; } else { // Do SQL INSERT query. }
Cheers, Rob.
But if they didn't fill it in, it won't be in the array and therefore won't be checked. You need to specify those keys manually.
foreach(array('type', 'start_date', etc...) as $key) { if(empty($_SESSION['add'][$key])) { $errors[] = $key.' not filled out'; } }
-- paperCrane <Justin Patrin>
-- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php