抱歉,如果这是一个菜鸟问题,但我仍在加快使用 PHP 的速度,但找不到这个问题的答案。
我有一个 php 脚本,它查询一个 mySQL 表,然后根据结果构建一个 HTML 表。这一切都很好。作为该脚本的一部分,我<td>
向每个脚本添加一个<tr>
,让用户有机会从数据库中删除每条特定记录,如果他们愿意的话。
为了完成这项工作,我必须能够将该记录的唯一标识符传递给 php 脚本,该标识符作为值之一存在。问题是,我不知道如何传递这个值。
这是我构建 HTML 表的 php 脚本:
while ($row = mysql_fetch_array($result)) {
echo
"<tr class=\"datarow\">" .
"<td id=\"id_hdr\">" . $row['id'] . "</td>" .
"<td id=\"name_hdr\">" . $row['name'] . "</td>" .
"<td id=\"btn_delete\">
<form action=\"delete_item.php\">
<input type=\"image\" src=\"images/delete.png\">
</form>
</td>" .
"</tr>";
}
所以,不知何故,我要么需要显式地传递“id”和“delete_item.php”和/或在 php 端找到一种方法来在变量中捕获这个值。如果我能做到这一点,我就自由了。
编辑:尝试执行下面的两个建议,但不能完全实现。以下是我根据阅读这些建议的方式更新表单的方式:
"<td id='btn_delete'>".
"<form action='scripts/delete_item.php'>".
"<img src='images/delete.png'>".
"<input type='hidden' id='uid' value='" . $row['id'] . "'>".
"<input type='submit' value='Submit'/>".
"</form>".
"</td>" .
然后,在 delete_item.php 中,我有这个:
$id = $_POST['uid'];
$sql = "DELETE FROM myTable WHERE id=$id";
$result = mysql_query($sql);
if (!$result) {
die("<p>Error removing item: " . mysql_error() . "</p>");
}
但是当我运行它时,我得到了错误:
删除项目时出错:您的 SQL 语法有误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '' 附近使用正确的语法
最后一件事:这种方法给了我一个按钮,在我的图像正下方带有“提交”一词。如果可能的话,我宁愿不要这个。
再次感谢!