我无法删除数据库中的特定行?

时间:2018-02-22 03:35:16

标签: javascript php mysql

以下是我用于打印每个回显数据的删除按钮的代码。

<?php
            $sno=1;
            while($row=mysqli_fetch_assoc($datas)){
                echo('<b><tr><td>'.$sno.'</td><td>' .$row['id'].'</td>
                <td>'.$row['name'].'</td>
                <td>'.$row['address'].'</td>
                <td>'.$row['faculty'].
                "</td><td>
                    <button onclick=deletee(); name='del_user' value='<?= $row['id']; ?>'> Delete </button><br>
                </td></tr>");
                ++$row;
                $sno++;
            }
        ?>

在剧本中;

function deletee() {
    <?php
        $datas="";
        $sql="";
        $idd=$row['id'];
        $datas=mysqli_query($database,"SELECT*FROM data");
        if(isset($_POST['delete_user'])){
            $newrow=mysqli_fetch_assoc($datas);
            if($newrow['id']==$idd)
            {
                $sql = "DELETE FROM data WHERE id='$idd' ";
                mysqli_query($database,$sql);
                header("Location: main.php");
            }
        }
    ?>
}

但我无法删除指定的元组。有什么问题? 我试图删除一行。 &#34;每个数据行都是删除按钮,删除特定行。&#34;

1 个答案:

答案 0 :(得分:0)

上述更好的选择是将按钮设为

<button onclick=deletee(<?=Row['id'] ?>)

从那里你的功能将是

function deletee(int id){
   var url = "/Url/Where/PHP/is/run"
   $.ajax({
    url: url,
    type: "post",
    data: { id = id },
    success: function (response) {
        // Redirect to a page, or update whats displayed on the page here
    },
    error: function(jqXHR, textStatus, errorThrown) {
       // do your error logging / display to page here
    }
});

现在你只需创建一个页面,通过你的php运行删除,并确保ajax函数中的url指向该页面,并且它接受一个名为&#34; id&#34;的字段。 (注意,这是用作&#34; POST&#34;,您可以更改为获取等等,只需确保对发送的数据进行一些检查。

如果你根本不想使用jquery,另一种方法是让每个lineitem都指向一个不同值的同一个url,即。

//line item details Here
// where the submit button is use the code below instead
<form action="url/with/php/code" method="post">
    <input type="hidden" name="id" value="<?= $row['id']?>" />
    <input type="submit" value="delete">
</form>

然后使用php表单指示检查发布值,并重定向成功/执行失败时需要做的事情