-1
    Supplier:* <br/><select name="supplier">
<?php foreach ($db->query($sql) as $row) { ?>
                    <option value="<?php echo $row['supplier_id']; ?>">
                        <?php echo $row['supplier_name']; ?>
                    </option>
                <?php } ?>
 </select>

在下一个 php 脚本中检索数据:

$supplier_name = ??????
$supplier_id = ?????

上面的代码允许用户从供应商表中选择供应商。

如何使用 POST 将供应商名称和关联的供应商 ID 从表单中传递给两个不同的变量?

4

2 回答 2

0

下面你有一个简单的例子。不使用隐藏的输入元素。

您的选择:

<select name="supplier">
<?php foreach ($db->query($sql) as $row) { ?>
     <option value="<?php echo $row['supplier_id'] .'|' . $row['supplier_name']; ?>">
          <?php echo $row['supplier_name']; ?>
     </option>
 <?php } ?>
 </select>

处理表单的 PHP 脚本:

if(isset($_POST['supplier']) {
    $arr = explode('|', $_POST[supplier]);

   if( count($arr) == 2 ) {
       $supplierId = $arr[0];
       $supplierName = $arr[1];
   }
}
于 2013-10-24T16:33:46.810 回答
0

最简单的方法是执行以下操作:

 <option value="<?php echo $row['supplier_id'].';'.$row['supplier_name']; ?>">
                    <?php echo $row['supplier_name']; ?>
                </option>

然后像这样评估它们:

$values = explode( ';', $_POST['supplier_info'] );
$supplier_id = $values[0];
$supplier_name = $values[1];

但在评估 $_POST-Data 时,最好只传输 id 然后查找供应商的名称

于 2013-10-24T16:35:29.133 回答