使用post传递输入值

时间:2017-04-15 04:26:00

标签: php post

我正在尝试将<input id="ids" type="hidden" name="ids" value="<?php echo $key['product_ID'];?>">的值传递给exchange.php页面。假设我有apple | 1 , orange | 2, pineapple | 3。但是,每当我尝试将值提交到另一个页面时,我将3作为$product的回显值。当我尝试删除type="hidden"时,我得到正确的值但是当我尝试提交时,结果却是不同的值。

<form action="exchange.php" method="post">
    <div class="row">
        <?php $query="SELECT * FROM Product" ; $data=$ MySQLi_CON->query($query); 
        foreach ($data as $key ) { ?>
        <strong>Name: </strong>
        <?php echo $productname=$ key[ 'product_Name'];?>
        <input id="ids" type="hidden" name="ids" value="<?php echo $key['product_ID'];?>">
        <strong>Status: </strong>
        <strong>Action: </strong>
        <input type="submit" value="Exchange" name="exchange_submit" class="btn btn-info btn-xs">
        <input id="id" name="id" type="hidden" value="<?php echo $id; ?>">
        <?php } ?>
    </div>
</form>

exchange.php

<?php
$id = $_POST['id']; 
$product = $_POST['ids']; 
echo $id; 
echo $product; 
exit;
?>

3 个答案:

答案 0 :(得分:1)

 <?php echo $productname=$ key[ 'product_Name'];?>
//is it working not showing error

答案 1 :(得分:0)

每当你执行一个foreach循环时,它会将Database表的最后一个输出存储在你的隐藏输入中,这就是为什么无论你给出什么输入,它都需要3作为product的id。尝试使用标签也是。

答案 2 :(得分:0)

您正在使用foreach产品,因此我认为您不止一种产品。

但是当你这样做时,你会覆盖$ _POST ['ids']。

<input id="ids" type="hidden" name="ids" value="<?php echo $key['product_ID'];?>">

这就是为什么它显示在表格中的最后product_ID