HTML表上的PHP删除按钮

HTML表上的PHP删除按钮,php,html,delete-row,Php,Html,Delete Row,我已经将结果从MySQL表输出到HTML表。在最后一列中,我想为特定行使用delete函数,但我的代码似乎不起作用 我现在已经调整了我的代码,因为你们这些好心的人给我留下了评论,它现在正在识别需要删除但不会删除的行?我被这个难倒了 再次,如果有人能向我解释这一点,并提供代码示例来纠正这一点,那么谢谢 这是我的页面代码: <table border="1" cellpadding="1" cellspacing="1"> <tr> <th>Adopti

我已经将结果从MySQL表输出到HTML表。在最后一列中,我想为特定行使用delete函数,但我的代码似乎不起作用

我现在已经调整了我的代码,因为你们这些好心的人给我留下了评论,它现在正在识别需要删除但不会删除的行?我被这个难倒了

再次,如果有人能向我解释这一点,并提供代码示例来纠正这一点,那么谢谢

这是我的页面代码:

<table border="1" cellpadding="1" cellspacing="1">

<tr>
    <th>AdoptionID</th>
    <th>UserID</th>
    <th>AnimalID</th>
    <th>Cancel</th>
<tr>

<?php
include("PHP/Connection.php");

$sql=mysql_query("SELECT * FROM `adoptionrequest` WHERE `userID` = '1' AND `approved` = 'Awaiting Approval' ");

while($requests=mysql_fetch_assoc($sql)){

    echo"<tr>";

    echo "<td>".$requests['adoptionID']."</td>";
    echo "<td>".$requests['userID']."</td>";
    echo "<td>".$requests['animalID']."</td>";
    ?>
    <td>
        <form action='PHP/Delete.php?id=<?php echo $requests['adoptionID'];?>' method="post">
        <input type="hidden" name="adoptionID" value="<?php echo $requests['adoptionID']; ?>">
        <input type="submit" value="Cancel" name="submit"></form>
    </td>

    <?php
    echo"<tr>";
}

?>

</table>

收养ID
用户ID
物识别
取消
具有无效的post数据。试一试

  $x = mysql_real_escape_string($_GET['adoptionID']);
  $query = "DELETE FROM contacts WHERE adoptionID=$x LIMIT 1";

更改HTML表单中的字段名

<form action='PHP/delete.php' method="post">
    <input type="hidden" name="adoptionID" value="<?php echo $requests['adoptionID']; ?>">
    <input type="submit" value="Cancel" name="submit">
</form>


WHERE-adoptionID={$\u POST['adoptionID']}
使用
isset()时应该是GET。另外,SQL注入即将到来。或者使用
$\u POST['name']
。。。您可能应该添加
include(“PHP/Connection.PHP”)
到删除脚本的顶部。在
{$\u POST['adoptionID']}
中使用单引号没有问题。看看上面的评论。问题是,
$\u GET
作为
adoptionID
以动作url的形式出现,或者将
$\u POST
name
一起使用,因为这是
adoptionID
@Sean I缺少的输入。仍然可以进行SQL注入,比如说再见数据库<代码>;升降台xxx--@Fred ii-嘲笑别人不是一个好的选择。相反,让他们改正错误来帮助他们。@Sean只是一个例子。但是我会站在
1或1=1
;-)上<代码>其中col='xxx');升降台xxxxx--
在delete.php中,我收到一个错误“未识别的索引采用ID”,这是为什么?没有POST变量
采用ID
。这意味着您尚未修改HTML。隐藏的文件应该具有属性
name=“adoptionID”
  $x = mysql_real_escape_string($_GET['adoptionID']);
  $query = "DELETE FROM contacts WHERE adoptionID=$x LIMIT 1";
<form action='PHP/delete.php' method="post">
    <input type="hidden" name="adoptionID" value="<?php echo $requests['adoptionID']; ?>">
    <input type="submit" value="Cancel" name="submit">
</form>
<?php
// Casting it to an int protects against SQL injection
$adoptionID = (int)$_POST['adoptionID'];

//Define the query
$query = "DELETE FROM contacts WHERE adoptionID={$adoptionID} LIMIT 1";

//sends the query to delete the entry
mysql_query($query); // <- You should be using mysqli_query