我在每个循环中传递一个表数据值给php脚本。这里的问题是,当我尝试echo $exchange;
。我没有得到任何特定产品名称的值。表单中显示的产品名称为item1。
<form action="exchangeItem" method="post">
<tbody>
<?php
$query = "SELECT * FROM product";
$data = $MySQLi_CON->query($query);
foreach ($data as $key ) {
?>
<tr>
<td class="id"><h3><input type="hidden" name="productName" ><?php echo $key['product_Name'];?></h3>
</td>
<input name = "id" type = "hidden" value="<?php echo $id; ?>">
<td id="exchange_button">
<input value="Exchange" name="exchange_submit" type="submit" class="btn btn-primary btn-md raised exchange_submit">
</td>
</tr>
<?php
}
?>
</tbody>
</form>
<标题> exchangeItem.php h1> div class="answers"> This
<td class="id"><h3><input type="hidden" name="productName" ><?php echo $key['product_Name'];?></h3>
应:<td class="id"><h3><input type="hidden" name="productName" value="<?php echo $key['product_Name'];?>" ></h3>
标题>首先,编辑你的 td
<td class="id"><h3><input type="hidden" name="productName[]" value="<?php echo $key['product_Name'];?>" ></h3>
your name => productName应该在数组中,这就是为什么你需要括号[],因为你使用foreach。然后你的文章也会在数组中。
exchangeItem.php
<?php
print_r($_POST['productName']);
exit;
?>
我已经添加了&更改了您的2个输入名称productName[]
, id[]
和您的表单动作exchangeItem.php
,如果您获得产品名称必须使用输入名称与数组,如[]
,因为您使用foreach
循环。
<form action="exchangeItem.php" method="post">
<tbody>
<?php
$query = "SELECT * FROM product";
$data = $MySQLi_CON->query($query);
foreach ($data as $key ) {
?>
<tr>
<td class="id">
<h3><input type="hidden" value="<?php echo $key['product_Name'];?>" name="productName[]" ><?php echo $key['product_Name'];?></h3>
<input name="id[]" type="hidden" value="<?php echo $id; ?>">
</td>
</tr>
<?php
}
?>
</tbody>
<tfoot>
<tr>
<td id="exchange_button">
<input value="Exchange" name="exchange_submit" type="submit" class="btn btn-primary btn-md raised exchange_submit">
</td>
</tr>
</tfoot>
</form>
exchangeItem.php
<?php
if(isset($_POST['exchange_submit'])) {
$exchange = $_POST['productName'];
foreach($exchange as $product_name) {
echo $product_name;
}
}
?>
您在这里面临的问题是使用这段代码
<td class="id">
<h3><input type="hidden" name="productName" ><?php echo $key['product_Name'];?></h3>
</td>
在这里的输入字段中,您没有添加值,这就是为什么当您试图在操作文件中打印张贴值时,它没有显示任何值。因此只需在输入字段
中添加add value <td class="id">
<h3><input type="hidden" name="productName" value="<?php echo $key['product_Name'];?>"></h3>
</td>
设置隐藏元素的值…不需要在header标签中放置隐藏元素。使用productName[]
发送数组值
<td class="id">
<h3><?php echo $key['product_Name'];?></h3>
<input type="hidden" name="productName[]" value="<?php echo $key['product_Name'];?>">
</td>
foreach所有的输出值。
<?php
$exchange = $_POST['productName'];
foreach($exchange as $key) {
echo $key;
}
exit;
?>
更新select
改变你的html选择值…
<td class="id">
<h3><input type="checkbox" name="productName[]" value="<?php echo $key['product_Name'];?>"><?php echo $key['product_Name'];?></h3>
</td>