删除div中的一行

时间:2016-02-25 17:07:28

标签: javascript php html mysql

我想插入"删除"每个div中的按钮,以便使用删除按钮数据库的行和div

div数量根据数据库中的行数而变化。

It should appear as follows,

显示数据效果很好。但是,删除(删除按钮)不起作用。

PHP     

    function deleteUser($connection, $userID){  //  this function calls within the "currentUsers" Function
        $sql2 = "DELETE FROM users_table WHERE user_id = '$userID' ";

        if (mysqli_query($connection, $sql2)) {
            header("Location: main.php");

        } else {
                echo "Error! ";
        }

    }


    function currentUsers($connection){
        $sql1 = "SELECT * FROM users_table ";
        $result1 = mysqli_query($connection, $sql1);

        if(mysqli_num_rows($result1) > 0){
            while($row = mysqli_fetch_assoc($result1)) {
                $userID = $row['user_id'];
                $name = $row['name'];
                $country = $row['country'];

                echo '<div> 
                        <h3>'. $userID. " ". $name. " ". $country. '</h3>
                        <input type = "button" name = "removeButton" value = "Remove" method = "GET">
                     </div>';

                if (isset($_GET['removeButton'])) {
                    deleteUser($connection, $userID);
                }
            }
        }else{
            echo "Currently there are no users!";
        }

        mysqli_close($connection);
    }

    currentUsers($connection);


?>

3 个答案:

答案 0 :(得分:1)

正如评论中的讨论,给出了以下代码。

更新了HTML

<input type="button" name="removeButton" value="Remove" class="removeBtn">

<强>使用Javascript:

var userID = "<?php echo $userID;?>";
$(".removeBtn").on("click", function(){
    $.post("page.php", { userID : userID}, function(result){
        if(result == "Success") window.location.href = "main.php";
        else alert(result);  
    });
});

<强> page.php文件

//need the database connection
$userID = $_POST['userID'];
$sql2 = "DELETE FROM users_table WHERE user_id = '$userID' ";
if (mysqli_query($connection, $sql2)) {
    echo 'Success';
} else {
    echo "Error! ";
}
  

如果要删除总数div以及数据库字段,请使用:

<强>使用Javascript:

var userID = "<?php echo $userID;?>";
$(".removeBtn").on("click", function(){
    var __this = $(this);
    $.post("page.php", { userID : userID}, function(result){
        if(result == "Success"){
            __this.closest("div").remove();
            window.location.href = "main.php";
        }
        else alert(result);  
    });
});
  

如果您想在$userID中传递input,请使用:

<input data-userid = <?php echo $userID;?> type="button" name="removeButton" value="Remove" class="removeBtn">

<强>的Javascript

$(".removeBtn").on("click", function(){
    var __this = $(this);
    var userID = __this.attr("data-userid");
    $.post("page.php", { userID : userID}, function(result){
        if(result == "Success"){
            __this.closest("div").remove();
            window.location.href = "main.php";
        }
        else alert(result);  
    });
});

这只是您问题的答案,但您必须根据需要使用它。这可能对您有所帮助,请尝试让我知道会发生什么。

答案 1 :(得分:0)

删除按钮不起作用,因为你从未进入deleteUser()方法。

你不能写

<input type = "button" name = "removeButton" value = "Remove" method = "GET">

因为它在一个表格内。要触发,请按以下方式编写:

<form method="GET">
    <input type = "submit" name = "removeButton" value = "<?php echo $userID;?>">
</form>

然后,在致电时

deleteUser($connection, $_GET['removeButton']);

希望这有帮助。

答案 2 :(得分:0)

<?php 
$connection = mysqli_connect('localhost', 'root', '', 'users');
 function deleteUser($connection, $userID){  //  this function calls within the "currentUsers" Function
        $sql2 = "DELETE FROM users_table  WHERE id = '$userID' ";

        if (mysqli_query($connection, $sql2)) {
            header("Location: main.php");

        } else {
                echo "Error! ";
        }

    }
   function currentUsers($connection){
        $sql1 = "SELECT * FROM maps ";
        $result1 = mysqli_query($connection, $sql1);

        if(mysqli_num_rows($result1) > 0){
            while($row = mysqli_fetch_assoc($result1)) {
                $userID = $row['id'];
                $name = $row['name'];
                $country = $row['country'];

                echo '<div> 
                        <h3>'. $userID. " ". $name. " ". $country. '</h3>
                        <a href="main.php?removeButton='.$userID.'" style="text-decoration: none;" > <input type = "button" value="Remove Button"></a>
                     </div>';
             }
        }else{
            echo "Currently there are no users!";
        }

        mysqli_close($connection);
    }

    if (isset($_GET['removeButton'])) 
    {
        deleteUser($connection, $_GET['removeButton']);
    }

    currentUsers($connection);

?>