MelissaMMDP Posted December 12, 2018 Share Posted December 12, 2018 (edited) I've been struggling with the following Pursue challenge. I found an eloquent solution in the forum for version 4 but it included a function which will not be discussed until chapter 3. I just can't find a way to echo a greeting based on gender selection without a nested conditional. I would appreciate help on this. Pursue: Rewrite the gender conditional in handle_form.php (Script 2.4) as one conditional instead of two nested ones. Hint: You’ll need to use the AND operator. Here is the nested conditional: // Validate the gender: if (isset($_POST['gender'])) { $gender = $_POST['gender']; if ($gender == 'M') { $greeting = '<p><strong>Good day, Sir!</strong></p>'; } elseif ($gender == 'F') { $greeting = '<p><strong>Good day, Madam!</strong></p>'; } else { // Unacceptable value. $gender = NULL; echo '<p class="error">Gender should be either "M" or "F"! </p>'; } } else { // $_POST['gender'] is not set. $gender = NULL; echo '<p class="error">You forgot to select your gender!</p>'; } Edited December 12, 2018 by MelissaMMDP Link to comment Share on other sites More sharing options...
MelissaMMDP Posted December 13, 2018 Author Share Posted December 13, 2018 Answered my own question: // Validate the gender: $gender = $_REQUEST['gender'] ?? NULL; if ($gender == 'M') { $greeting = '<p><strong>Good day, Sir!</strong></p>'; } elseif ($gender == 'F') { $greeting = '<p><strong>Good day, Madam!</strong></p>'; } else { // $_POST['gender'] is not set. echo '<p class="error">You forgot to select your gender!</p>'; } Link to comment Share on other sites More sharing options...
MelissaMMDP Posted December 13, 2018 Author Share Posted December 13, 2018 18 hours ago, MelissaMMDP said: $gender = $_REQUEST['gender'] ?? NULL; Correction - should be: $gender = $_POST['gender'] ?? NULL; Link to comment Share on other sites More sharing options...
Larry Posted December 16, 2018 Share Posted December 16, 2018 That's a fine solution! In the other thread I posted what I originally had in mind, though. With programming, there are many ways! 1 Link to comment Share on other sites More sharing options...
Recommended Posts