Reputation: 79
I have a html form. Following is my html code.
How do i selected civil status if user forgot to put other field information.
Ex: user select civil status, put first name but forgot to put last name. Then It's show a error message "Please select your last name". But when it's show the error message then selected item is empty. How do i selected the civil item with php.
<tr>
<td width="400">Status</td>
<td>
<select name="civil_status">
<option value="">Select..</option>
<option value="mr.">Mr.</option>
<option value="mrs.">Mrs.</option>
<option value="miss">Miss</option>
</select>
</td>
</tr>
<tr>
<td>Last Name</td>
<td><input type="text" name="l_name" value="<?php if(isset($_POST['l_name'])) echo
$_POST['l_name']; ?>" class="tr2" /></td>
</tr>
<tr>
<td>First Name</td>
<td><input type="text" name="f_name" value="<?php if(isset($_POST['f_name'])) echo
$_POST['f_name']; ?>" class="tr2" /></td>
</tr>
Upvotes: 1
Views: 88
Reputation: 1650
You just have to add an selected="selected"
to the corresponding <option>
-Tag.
Something like:
<option value="">Select..</option>
<option value="mr." selected="selected">Mr.</option>
<option value="mrs.">Mrs.</option>
<option value="miss">Miss</option>
This of cause based on the value of $_POST['civil_status']
.
EDIT: Quick and dirty:
<?php
if (isset($_POST['civil_status'])) $cs = $_POST['civil_status'];
else $cs = '';
?>
<option value="" <? if ($cs=='') echo 'selected="selected"'; ?>>Select..</option>
<option value="mr." <? if ($cs=='mr.') echo 'selected="selected"'; ?>>Mr.</option>
<option value="mrs." <? if ($cs=='mrs.') echo 'selected="selected"'; ?>>Mrs.</option>
<option value="miss" <? if ($cs=='miss') echo 'selected="selected"'; ?>>Miss</option>
Upvotes: 0
Reputation: 30565
I would do:
<select name="civil_status">
<option value="">Select..</option>
<?php
$options = array('mr.' => 'Mr.', 'mrs.' => 'Mrs.', 'miss' => 'Miss');
foreach($options as $key => $value){
if($_POST['civil_status'] == $key){
echo '<option value="'.$key.'" selected="selected">'.$value.'</option>';
}else{
echo '<option value="'.$key.'">'.$value.'</option>';
}
}
?>
</select>
Upvotes: 3