Php 获取已更改的select in表的值
我需要获取所选选择项的值 如更改行的orderno 这张桌子看起来像这样 如果我将1002号订单更改为已售出Php 获取已更改的select in表的值,php,mysql,Php,Mysql,我需要获取所选选择项的值 如更改行的orderno 这张桌子看起来像这样 如果我将1002号订单更改为已售出 $query = mysql_query("select * from orders"); while($row = mysql_fetch_assoc($query)) { echo '<tr>'; echo '<td>'.$row['orderno'].'</td>'; echo '<td>'.$r
$query = mysql_query("select * from orders");
while($row = mysql_fetch_assoc($query))
{
echo '<tr>';
echo '<td>'.$row['orderno'].'</td>';
echo '<td>'.$row['total'].'</td>';
echo '<td>';
if($row['status'] == "sold")
{
echo '<select name = "status[]">';
echo '<option value = "sold" selected>Sold</option>';
echo '<option value = "cancelled">Cancelled</option>';
echo '</select>';
}
else
{
echo '<select name = "status[]">';
echo '<option value = "sold">Sold</option>';
echo '<option value = "cancelled" selected>Cancelled</option>';
echo '</select>';
}
echo '</td>
echo </tr>';
}
if(isset($_POST['status']))
{
//sample only
echo "You change orderno ".$orderno_here." with the
total of ".$total_of_order." into ".$selected_status_of_orderno_here;
}
$query=mysql\u查询(“从订单中选择*);
while($row=mysql\u fetch\u assoc($query))
{
回声';
回显'.$row['orderno'].';
回显'.$row['total'].';
回声';
如果($row['status']==“已售出”)
{
回声';
echo‘出售’;
回声“取消”;
回声';
}
其他的
{
回声';
echo‘出售’;
回声“取消”;
回声';
}
回声'
回声';
}
如果(isset($_POST['status']))
{
//仅样品
用
将“$total\u of_order.”的总计添加到此处的“$selected\u status\u of_orderno\u”;
}
表中有许多记录,所选内容相同
根据您的问题,无论我理解什么,我如何获取所选select的值,根据我的理解,我假设您从页面中的表单类标记获取数据。如果是这样的话,您就知道哪一个值被更改为反映在db中。所以你可以从这里选择。 您可以通过以下代码检查更改:
if(isset($_POST['element'])){
//if this block executed, the <element> named element is changed
}
if(isset($\u POST['element'])){
//如果执行此块,则会更改命名元素
}
如果您在代码中使用的不是这种情况,请忽略此答案。每个
元素的选定值都将随表单一起提交,无论是否更改了默认值。假设您已将表单元素命名为status[]
,PHP将把提交的数据解析为数组,例如$\u POST['status'][0]
,$\u POST['status'][1]
,等等。您可以检查每个提交的元素的值,然后决定如何处理它们。但是,如果您按订单号为每个表单元素编制索引(例如,
),您可能会发现更容易。好的,但是我如何知道我使用订单号作为索引更改了哪个选择状态?一种方法可能是与数据库中当前的数据进行比较。。。