使用复选框删除多行

我有这个代码


<html>

<head>

    <meta charset="UTF-8">

    <title> Game Library</title>

    <link href="css/style.css" type="text/css" rel="stylesheet">

</head>

<body>

    <div id="wrapper">

<div id="search">

    <img id="del" src="img/delete.jpg" alt="Error">

        <a class="A" href="index.php"><img class="AR" src="img/src.jpg" title="Search library"></a>

            <a class="A" href="insert.php"><img class="AR" src="img/add.png" title="Add game"></a>

    <div id="results">

    <?php  

        require("inc/connection.php");

$query = "SELECT * FROM Library";


$result = mysqli_query($conn,$query);


    if(mysqli_num_rows($result)>0){


        while($row = mysqli_fetch_assoc($result)){


            ?><div id="results">

            <form action="inc/delete.php" method="GET">

            <input type="checkbox" name="checkbox[]"  value="<?php echo $row['ID'] ?>"> 

    <p id="p1">Name: <?php echo $row['Name']?>;</p>

                    <p>Genre: <?php echo $row['Genre']?></p>

                    <p>Release date: <?php echo $row['Release_date']?></p>

                    <p>Publisher: <?php echo $row['Publisher']?>:</p>

                    <p>Platforms: <?php echo $row['Platforms']?></p>

                </div>

                <?php

        }?>

    <input  type="submit" name = "submit" value = "Submit"></form>

        <?php

}else{

        echo "No results!";

    }

    </div>

            </div>

</div>

</body>

</html>

我应该创建action="inc/delete.php"脚本,允许我使用复选框和提交按钮删除多行。有人可以帮我解决这个问题吗?老实说,我不知道如何完成这个....


Smart猫小萌
浏览 199回答 3
3回答

沧海一幻觉

<?php&nbsp;&nbsp; &nbsp; if(isset($_POST['submit']))&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; if(!empty($_POST['checkbox']))&nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach ($_POST['checkbox'] as $key => $check)&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // delete query&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; }?>注意:您未能在第 1 行关闭 PHP。40. 请确认您的 PHP 标签是否关闭。

白猪掌柜的

需要先将表单方法设置为“POST”所以,修改<form action="inc/delete.php" method="GET">至:<form action="inc/delete.php" method="post">而在inc/delete.php,if (isset($_POST['submit'])){ // Check if form is submitted.&nbsp;if (! empty($_POST['checkbox'])){ // Check if Checkbox is checked.&nbsp; // Loop over the checkbox and get selected ids.&nbsp; foreach($_POST['checkbox'] as $checkbox_id){&nbsp; &nbsp; echo $checkbox_id."<br/>";&nbsp; &nbsp; // Add your delete query here.&nbsp; }&nbsp;}}

一只甜甜圈

所以解决方案是你得到你的idsdelete脚本array。您可以解析该数组并为每个执行 DELETE 查询id:if(isset($_POST['checkbox'])){&nbsp; &nbsp; foreach($_POST['checkbox'] as $val)&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; $stmt = $conn->prepare("DELETE FROM Library WHERE id = ?");&nbsp; &nbsp; &nbsp; &nbsp; $stmt->bind_param('i', $val);&nbsp; &nbsp; &nbsp; &nbsp; $stmt->execute();&nbsp; &nbsp; }}
打开App,查看更多内容
随时随地看视频慕课网APP