Php foreach循环中的输入类型隐藏字段

Php foreach循环中的输入类型隐藏字段,php,types,input,foreach,hidden,Php,Types,Input,Foreach,Hidden,我正在尝试添加提交按钮和隐藏的输入字段,以便当用户单击提交按钮时,我可以识别他们选择的项目。虽然我不知道如何访问隐藏的值。我有这个代码(input type=“hidden”中的值是项目的id)。如何访问这些值 foreach($dbh->query("SELECT * FROM beer WHERE country_id = $countryID") as $beer) { echo "<a href='BeerSummary.php?beerID=$beer[id]'&g

我正在尝试添加提交按钮和隐藏的输入字段,以便当用户单击提交按钮时,我可以识别他们选择的项目。虽然我不知道如何访问隐藏的值。我有这个代码(input type=“hidden”中的值是项目的id)。如何访问这些值

foreach($dbh->query("SELECT * FROM beer WHERE country_id = $countryID") as $beer) {
    echo "<a href='BeerSummary.php?beerID=$beer[id]'>$beer[2]</a> <br/>";
    echo "ABV $beer[3]% - $beer[4] ml - Case Size $beer[5] - Price £$beer[6]";
    echo '<input type="submit" value="Add to Cart"> <br/>';
    echo '<input type="hidden" name="beer_id[]" value="'.$beer[0].'">';
    echo "<br/>";

您已将它们定义为输入数组,因此访问它们的方法是:

foreach($_POST['beer_id'] as $value)
{
    echo $value;
}

对于每个隐藏字段,使用id.
id=hidden+$beer[i]
然后,您可以使用
document.getElementById(“hidden”+$beer[i])

这将在javascript中工作


如果你想在php中实现同样的效果,@Ben的答案应该有效。

你是否使用表单或链接提交数据?我看不到表单标签,只有锚标签。标记在我的代码中,没有包括它,因为这只是代码的一小部分,我遇到了麻烦。表单标记是在循环外还是在每个元素的循环内?在外,哦,我知道这是怎么回事了-把它放进去?是的。然后你会得到一个帖子,其中只包含你想添加到cart.Hm的内容,虽然这会给我所有的值,而不是用户提交的值-任何其他方式?如果你把所有这些都放在一个表单中,那么它们都会被提交。如果你想一次做一个的话,最好的方法是把每一个都分割成一个小表单,然后把数组从输入中去掉。啊,我明白了,谢谢。最好有几个小表单,或者对每个隐藏输入的名称使用某种类型的变量计数器,并使用多个if-isset语句来检查哪些已提交并以这种方式获取值?如果您一次只执行一个表单,我会坚持使用单独的表单。如果您一次执行多个操作,我会使用jQuery将逗号分隔的数组填充到一个隐藏元素中,然后在发布后将其分解为一个数组。我一次执行一个,所以我将坚持使用多个表单,干杯!谢谢你的帮助,不过我还是会坚持使用PHP:)
foreach($_POST['beer_id'] as $value)
{
    echo $value;
}