【发布时间】:2016-12-30 15:41:12
【问题描述】:
我正在开发一个网站,用户可以在该网站上输入他欠朋友的钱。在一个页面上,用户可以看到他到目前为止所做的所有条目,并且应该能够删除它们。所有条目都插入数据库中。对于此概览页面,我使用以下结构:
<ul class="list-group">
<?php
$isEmpty = true;
while ($data = mysql_fetch_array($res)) {
if ($data['isDebt'] == 0) {
$isEmpty = false; ?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" autocomplete="off">
<li class="list-group-item" name="Debt_ID" value="<?php echo $data['Debt_ID'] ?>"><span class="badge"><?php echo $data['value']; ?></span><?php echo $data['name']; ?>
<button name="delete" type="submit" id="delete" class="btn btn-xs btn-danger pull-right">
<span class="glyphicon glyphicon-trash" aria-hidden="true"></span>
</button>
</li>
</form>
<?php }
}
if ($isEmpty) { ?>
<li class="list-group-item">No debt!</li>
<?php
} ?>
</ul>
一个债务条目具有以下值:
- Debt_ID(数字)
- 名称(如“杰克的披萨”)
- 价值(价格。例如“10”)
每个 li 元素的按钮应通过 Debt_ID 删除 DB 中的条目。到目前为止,我使用了以下 SQL 语句:
DELETE FROM Debt WHERE Debt_ID='$debt_ID';
在 PHP 中它看起来像这样:
if (isset($_GET['delete'])) {
$debt_ID = trim($_POST['Debt_ID']);
$res = mysql_query("DELETE FROM Debt WHERE Debt_ID='$debt_ID';");
if ($res) {
$errTyp = "success";
$errMSG = "Successfully deleted";
} else {
$errTyp = "danger";
$errMSG = "Error occured";
}
}
我现在的问题是我无法获得我在li 元素中使用 PHP 输入的 Debt_ID。有谁知道更好的方法或我做错了什么?
我正在使用 Cloud9 进行开发,因此如果有兴趣我可以邀请其他人。
【问题讨论】:
-
使用债务 ID 创建
input type=hidden -
<li>不是输入。如果您要使用类似的东西,请使用隐藏输入。 -
这里也没有 jquery/ajax,所以如果它们没有错误或导致您犯的语法错误,那么应该删除这些标签。
-
@u_mulder 我们的 cmets 就像,相隔 2 秒。 GMTA 我猜 lol 我在打字的时候没有看到你的。但是,是的,这就是这里的解决方案。
-
如何从输入字段中检索 ID?
标签: php jquery html mysql ajax