我有一个数组,其中包含我已经提交的对象以foreach的形式显示,我这样做了:
<?php session_start(); if(isset($_SESSION['objectList'])){
foreach($_SESSION['objectList'] as $object){
?>
<form action="control.php" method="post">
<input type="submit" name="op" value="-" /> <?php echo $object;?>
</form>
<?php }
}else{
echo "No hay objetos";
}
?>
当按下“ - ”按钮时,必须删除该按钮数组的位置,这是通过另一个类中的以下代码完成的:
unset($_SESSION['objectList'][$object]);
$_SESSION['objectList']=array_values($_SESSION['objectList']);
但我不知道如何发送按下按钮的索引值
看起来像这样 empty array 3 object in the array
答案 0 :(得分:2)
您可以将索引添加为隐藏输入,如下所示:
<?php session_start(); if(isset($_SESSION['objectList'])){
foreach($_SESSION['objectList'] as $index => $object){
?>
<form action="control.php" method="post">
<input type="hidden" name="index" value="<?= $index; ?>" />
<input type="submit" name="op" value="-" /> <?php echo $object;?>
</form>
<?php }
}else{
echo "No hay objetos";
}
?>
然后索引在$ _POST变量$_POST['index']
但是如果你使用数字索引要小心,因为如果你取消它,那么索引可能不再正确。更好地使用关联数组。