我的目标是显示整个表格,例如SELECT * FROM athlete和包含表格输出中每一行的按钮,按下时将从数据库中删除该行。
我已经关注了另一篇文章,下面显示的是我到目前为止所做的但是不起作用:
//if(isset($_POST['delete_id']) && (!empty($_POST['delete_id'])))
if(isset($_POST['Delete'])){
$delete_id = mysql_real_escape_string($_POST['delete_id']);
echo("deletebutton" . $delete_id);
//mysql_query("DELETE FROM KeepScores WHERE `id`=".$delete_id);
//header('Location: main.php');
}
else
{
$query = 'SELECT * FROM athlete';
$result = mysql_query($query);
$self = $_SERVER['PHP_SELF'];
$self = htmlentities($_SERVER['PHP_SELF']); // strip tags to improve security
echo("<table>
<tr>
<td> id </td>
<td>last name</td>
<td>first name</td>
<td>delete data</td>
</tr>");
while($row = mysql_fetch_array($result))
{
$id = $row['id'];
echo("<tr>");
echo("<td>" . $row['id'] . "</td>");
echo("<td>" . $row['lastName'] . "</td>");
echo("<td>" . $row['firstName'] . "</td>");
echo("<td> <form action='$self' method='post'>
<input type='hidden' name='delete_id value='$id' />
<input type='submit' value='Delete' />
</form>
</td>
</tr>");
}
mysql_free_result($result);
echo("</table>");
}
然而,这不起作用。有谁知道为什么。注意:我已将我的登录凭据保留,但我将连接到文件中其他位置的数据库。
答案 0 :(得分:1)
最可能的原因是你检查$ _POST ['删除']没有给任何提交按钮提供'删除'属性'名称'。但是,您在上面注释掉的那行应该有用吗?
答案 1 :(得分:0)
我认为你应该研究这个领域
//if(isset($_POST['delete_id']) && (!empty($_POST['delete_id'])))
如果(isset($ _ POST [ '删除'])){
和
<input type='submit' value='Delete' />
您应该包含:<input type='submit' name="Delete" value='Delete' />
那应该可以解决问题。