php - 根据用户的选择在 while 循环中获取变量?

标签 php html mysql web

我想从 deleteupload.php 中删除单个帖子,因此我想访问 product_id,它是提交后每一行的唯一标识符。我将每个产品包装在一个表单元素和一个提交按钮中。所以页面有多个表单元素。

这是我的代码:

 while ($row = mysql_fetch_array($loop))
 {
  $proID = $row['product_id'];

 echo "<table border='0' width='100%' align='center' class='centrebox'><tr>
 <td width='25%'>".($row['product_name']) . "</td> " . "
 <td width='35%'>".($row['product_disc'])."</td>";

 echo '<td width="40%"><img width="100%" height="300"  src="data:image/jpeg;base64,'.base64_encode( $row['product_image'] ).'"/></td></tr>
 <td><form method="post" action="deleteupload.php">
 <input type="submit" name="$proID" value="Delete"></form></td></table><br>';

}

此 while 循环遍历 sql 表并回显列(product_name、product_disc 和 product_image)。

最佳答案

你可以把它放在你的 html/php 中

       echo '<td width="40%"><img width="100%" height="300"  src="data:image/jpeg;base64,'.base64_encode( $row['product_image'] ).'"/></td></tr>
             <td><form name="form' . $proID . '" class="del_forms" method="post" action="deleteupload.php">
             <input type = "hidden" name="del_item" value="' . $proID .'" />
             <input type="submit" value="Delete" /></form></td></table><br>';

在您的 deleteupload.php 中,您将选择 $proID; 作为 $_POST['del_item']; 变量。假设 $proID; 是您要删除的项目的 ID 号。

请注意,您应该使用 mysqli 而不是 mysql,因为 mysql 被认为容易受到攻击。您还应该转义/清理 $_POST 变量以帮助防止注入(inject)攻击。

  (int) $_POST['del_item'];

在这种情况下,只要 ID 已经是整数,就应该实现这一点。 (如果它们包含字母则无效。)

您可能也会对此感兴趣:Multiple Forms or Multiple Submits in a Page?

关于php - 根据用户的选择在 while 循环中获取变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33965765/

相关文章:

javascript - 以编程方式显示 SVG 工具提示

php - 从 HTML 表单发送变量

php - MySQL:当通过 $_GET 变量执行查询时,行没有更新

mysql - Varchar 或文本数据类型,字符串长度可达几千个字符

php - Codeigniter 多插入查询

php - 同时将 Date 加 1 年并减去 1 Day

php - Mysql带条件的子查询,不同的结果

php - 使用来自同一行的 id 单击带有 XPath 的按钮

html - 光标仅更改为图像部分的指针

html - 内嵌 block 框不适合它们的容器