Below I have a php/mysqli block of code where it creates a drop down menu:
$moduleHTML = "";
$moduleHTML .= '<select name="modules" id="modulesDrop">'.PHP_EOL;
$moduleHTML .= '<option value="">Please Select</option>'.PHP_EOL;
while($sqlstmt->fetch()) {
$moduleHTML .= sprintf('<option value="%1$s_%2$s_%3$s">%1$s - %2$s</option>'.PHP_EOL, $dbModuleNo, $dbModuleName, $dbModuleId);
}
$moduleHTML .= '</select>';
The HTML for this is:
<select name="modules" id="modulesDrop">
<option value="">Please Select</option>
</select>
Now I am trying to display a message if the user has selected the option Please Select. But problem is that the message is not being displayed. MY question is how can I get message to be displayed stating that a Module needs to be selected if user selects Please Select?
Below is main code:
<?php
...
$moduleHTML = "";
$moduleHTML .= '<select name="modules" id="modulesDrop">'.PHP_EOL;
$moduleHTML .= '<option value="">Please Select</option>'.PHP_EOL;
while($sqlstmt->fetch()) {
$moduleHTML .= sprintf('<option value="%1$s_%2$s_%3$s">%1$s - %2$s</option>'.PHP_EOL, $dbModuleNo, $dbModuleName, $dbModuleId);
}
$moduleHTML .= '</select>';
$pHTML = "";
?>
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post">
<table>
<tr>
<th>Module: <?php echo $moduleHTML; ?></th>
</tr>
</table>
<p><input id="moduleSubmit" type="submit" value="Submit Module" name="moduleSubmit" /></p>
</form>
<?php
if (isset($_POST['moduleSubmit'])){
if (isset($_POST['modules']) && $_POST['modules'] == '' ){
$pHTML = "<span style='color: red'>Please Select a Module</span>";
}else{
$assessmentform = "<div id='lt-container'>
<form action='".htmlentities($_SERVER['PHP_SELF'])."' method='post' id='assessmentForm'>
<p id='warnings'>{$pHTML}</p>
<p><strong>View Assessment Details:</p>
name='sessionSubmit' /></p>
</form>
</div>";
echo $assessmentform;
}
}
?>
You have given value = “” for the option Please Select. So you can directly check the element. Also, you have done it. Please check the line,
This line will check whether the user selected any value or not.