Php 从mysql检索数据而不是数据id

Php 从mysql检索数据而不是数据id,php,mysql,forms,Php,Mysql,Forms,大家好,我正在使用php和mysql 我有一个表单,在该表单中,我从一个表中访问数据,并在选择后将该数据插入到另一个表中。但我的主要限制是存储选定的数据id,而不是数据值 请告诉我如何获取数据值而不是数据id 下面是示例代码 <td>Status:</td> <td> <select name="status" id="status"> <?php $svar = mysql_q

大家好,我正在使用php和mysql

我有一个表单,在该表单中,我从一个表中访问数据,并在选择后将该数据插入到另一个表中。但我的主要限制是存储选定的数据id,而不是数据值

请告诉我如何获取数据值而不是数据id

下面是示例代码

<td>Status:</td>
                    <td>   <select name="status" id="status">
          <?php $svar = mysql_query("select * from status");
          while($sresult = mysql_fetch_array($svar)){ ?>
          <option value="<?php echo $sresult['id']; ?>" <?php if($sresult['id']==$row['status']){ echo "selected"; }?> /><?php  echo $sresult['status']; ?></option>
          <?php } ?>
                        </select> </td>

虽然您遗漏了相当多的代码,这将有助于100%的检查,但我认为我可以对您的尝试进行有根据的猜测

这只是因为您将选择框的值设置为id,而不是值

更改此行:

<option value="<?php echo $sresult['id']; ?>" <?php if($sresult['id']==$row['status']){ echo "selected"; }?> /><?php  echo $sresult['status']; ?></option>

分配给选项字段的值是$sresult['id'],因此相同的id存储在第二个表中以设置状态

替换

    value = " <?php echo $sresult['id'] ?> " 
value=“”
提交给

    value = " <?php echo $sresult['status'] ?> "
value=“”

在新代码中。它们不再得到维护,而是在使用。看到红色的盒子了吗?改为了解准备好的语句,并使用or。
status
的值是由html设置的
result[id]
,如果您需要该值,则需要更改
value=
,因为value属性是通过POST发送的,当您有
value=更多代码时,接收id是正常的!!这将产生一个工作下拉列表。您是否尝试过使用var_dump($_POST)查看它发送的内容?这会告诉你你的问题是这个代码,还是下一个。我也这么认为。我想添加:
[这只是一个标签,不是发送的值]
J5Dev帮助了我,谢谢你的回复。如果我有任何其他疑问,希望能给你回复。
    value = " <?php echo $sresult['id'] ?> " 
    value = " <?php echo $sresult['status'] ?> "