Reputation: 29
when i try to selected option from sql in dropdown list i get all options is selected :
$status1 = $row7["status"];
if($status1 == "draft") { $slc = "selected"; }
if($status1 == "ordered") { $slc = "selected"; }
if($status1 == "shipped") { $slc = "selected"; }
echo "
<select class=\"form-control input-sm\" name = \"o_status\">
<option value = \"draft\" $slc>draft</option>
<option value = \"ordered\" $slc>ordered</option>
<option value = \"shipped\" $slc>shipped</option>
</select>
";
my problem with output selected all options like that :
<select class="form-control input-sm" name = "status">
<option value = "draft" selected>draft</option>
<option value = "ordered" selected>shipped</option>
<option value = "shipped" selected>shipped</option>
Upvotes: 0
Views: 683
Reputation: 24276
You can define an array of statuses in order to set the select options:
<?php
$statuses = array(
'draft' => 'New draft',
'ordered' => 'New order',
'shipped' => 'New ship'
);
?>
<select class="form-control input-sm" name="status">
<?php
foreach ($statuses as $status => $name) {
?>
<option value="<?php echo $status ?>" <?php echo $status === $row7['status'] ? 'selected="selected"' : '' ?>>
<?php echo $name ?>
</option>
<?php
}
?>
</select>
Upvotes: 4
Reputation: 184
Maybe this helps:
<?php
switch ($row7["status"]) {
case 'draft':
$draft = "selected";
$shipped = "";
$ordered = "";
break;
case 'ordered':
$ordered = "selected";
$draft = "";
$shipped = "";
break;
case 'shipped':
$shipped = "selected";
$draft = "";
$ordered = "";
break;
default:
$draft = "";
$shipped = "";
$ordered = "";
break;
}
echo "<select class=\"form-control input-sm\" name = \"o_status\">
<option value = \"draft\" $draft>draft</option>
<option value = \"ordered\" $ordered>ordered</option>
<option value = \"shipped\" $shipped>shipped</option>
</select>";
?>
Upvotes: 1
Reputation: 1815
Please check now.
Hope this helps you:
$status1 = $row7["status"];
if($status1 == "draft") { $draft = "selected"; }
if($status1 == "ordered") { $ordered = "selected"; }
if($status1 == "shipped") { $shipped = "selected"; }
echo "
<select class=\"form-control input-sm\" name = \"o_status\">
<option value = \"draft\" $draft>draft</option>
<option value = \"ordered\" $ordered>ordered</option>
<option value = \"shipped\" $shipped>shipped</option>
</select>
";
Upvotes: 4