php - 为什么隐藏输入字段的值总是给我相同的结果?

标签 php html css

首先我是 php 初学者,其次我试图追踪隐藏输入的值,即“表产品中图像的 ID”,但是每当我单击任何图像的删除按钮时,它总是给我产品表中最后一张图片的最后一个 ID,当我将输入更改为文本时,它会打印正确的 ID,但如果我将它与 POST 一起使用,它将不起作用。

代码如下:

<?php
if(isset($_POST['delete'])){
$dataBase = mysql_connect("localhost","root","");
mysql_select_db('HouseOfCake'); 
$PID = $_POST['PID'];
echo $PID ;
}

?>
<!DOCTYPE html>
<html>
<head>
<style>
</style>
</head>
<body>
<form method="POST" action="Delete.php">   
<div class="container">   
<?php
$dataBase = mysqli_connect("localhost","root","" , "HouseOfCake"); 
?>
<div class="row text-center">         
<?php
$r=mysqli_query($dataBase,"SELECT*FROM Products");
while($Products=mysqli_fetch_array($r, MYSQLI_ASSOC)){
?> 
<div class="col-lg-3 col-md-6 mb-4">
<div class="card" name= <?php $Products['CakeID']; ?>>
<image src = <?php echo 
'data:image/jpg;base64,'.base64_encode($Products['Image']).'' ;  ?>  /> 
<div class="card-body">
<h4 class="card-title"> <?php echo $Products['Price']; ?> SR. </h4>
<p class="card-text"> Details.</p>
</div>
<div class="card-footer">
<input type="text" value= "<?php echo $Products['CakeID'] ?>"  name="PID" >
<input type = "submit" name="delete" value=" Delete Item." 
 style="width:250px" >           
</div> 
</div>
</div>      
<?php
}
?>
</div>
</div>
</form>
</body>
</html>

最佳答案

为了清理你正在做的事情,让它更容易理解,你有这个简而言之:

<form>
while {
   <inputs>
}
</form>

这样做的目的是将所有这些输入提交给 PHP。由于 while 中的每个输入都具有相同的名称,PHP 将只使用“最后一个收到的”。

你想要这样的流程:

while {
   <form>
   <inputs>
   </form>
}

这样每个表单只提交其中定义的输入(而不是页面上的所有输入)。


所以回顾一下你的代码,你会希望在页面上有多个表单:

<?php while($Products=mysqli_fetch_array($r, MYSQLI_ASSOC)){ ?>
    <form method="POST" action="Delete.php">
        <input type="text" value="<?php echo $Products['CakeID'];?>" name="PID">
        <input type="submit" name="delete" value="Delete Item." style="width:250px">
    </form>
<?php }?>

关于php - 为什么隐藏输入字段的值总是给我相同的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49392726/

相关文章:

html - 如何从外部插件中检索选定的下拉值?

html - 如何使用 CSS 使 TD 表现得像 TR(row)?

java - 如何在 JSF 中检索 DIV 宽度

javascript - 用 jQuery/AJAX 替换 Div 内容 - 带按钮 ID

html - 如何在使用 css 在图像上显示文本(悬停)时模糊图像

html - 文字不换行,无论如何

php - SQL多个where子句使用PHP进行过滤

javascript - 任何视频播放器都无法使用临时视频源文件寻找视频

php - 使用 PHP 将文件添加到未压缩的 zip

php - 增加内存限制