我有一个包含三个选项的选择框。选择选项时,请单击“保存”按钮,该按钮在字段上执行数据库更新。这将涉及在一个表单中有两个提交按钮。我在每个提交按钮上创建了不同的操作,这将是保存按钮:
if ($_POST['update_status'] == 'Save') {
$keys = array_keys($_POST['order_status']);
//perform the database update to change the option value
}
if(isset($_POST['order_selected'])) {
//send email
}
目前,我的每个选项的选择框都嵌入在如下表格中:
echo '<select name="order_status[] id="id"">';
echo '<option value = "Pending" name="order_status['.$i.']" class = "pending"' . ($row['status'] == 'Pending' ? ' selected=selected' : '') . '>Pending</option>';
echo '<option value = "Approved" name="order_status['.$i.']" class = "approved"' . ($row['status'] == 'Approved' ? ' selected=selected' : '') . '>Approved</option>';
echo '<option value = "Disapproved" name="order_status['.$i.']" class ="disapproved"' . ($row['status'] == 'Disapproved' ? ' selected=selected' : '') . '>Disapproved</option>';
echo '</select>';
现在我有更新查询工作,除了它在表格之外并且通过从数据库中发布一个唯一的订单ID然后执行他的更新来工作。但是我只能做'批准'。“待处理”不是问题,因为我在创建订单时已经在数据库中设置了一个标志,默认为待处理。
我不想在表单之外拥有这个功能,我想成为苹果来选择一个下拉项目,点击保存,然后运行数据库更新查询,在同一个表单中更改选择框中的值,如果这是可能的?。
目前,我在表单之外有查询和提交按钮,如下所示:
<?php
if (!empty($_POST)) {
$id = intval($_POST['approval']);
$query = "UPDATE Orders SET status = 'Approved' WHERE id = $id";
mysql_query($query);
}
$query = "SELECT ID, Orderno, status FROM Orders WHERE status = '0'";
$result = mysql_query($query);
?>
<select name="approval">
<?php while ($row = mysql_fetch_assoc($result)): ?>
<option value="<?php echo $row['ID']; ?>"><?php echo $row['Orderno']; ?></option>
<?php endwhile; ?>
</select>
<input type="submit" action ="" value="Approve Order" />
非常感谢,非常感谢任何关于我应该如何解决这个问题的指示。