首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用复选框从MySQL数据库中删除

问使用复选框从MySQL数据库中删除
EN

Stack Overflow用户
提问于 2017-06-23 16:35:20
回答 1查看 45关注 0票数 0

我正在尝试从包含从MySQL表生成的数据的表中删除一行。我研究了这两个问题: 1.如何使用checkbox删除数据库结果行2.使用checkbox、PHP和MySQL删除多行。

我需要使用复选框删除代码的帮助。

代码语言:javascript
复制
<?php

$sql = mysqli_query($conn, "SELECT * FROM leads ORDER BY lid ASC");
if(mysqli_num_rows($sql) == 0){
   echo '<tr><td colspan="8">No Data Entry</td></tr>';
}else{
    while($row = mysqli_fetch_assoc($sql)){
        echo '<tr>
                <td> <input name"checkbox[]" value"'.$row['lid'].'" type="checkbox"></td>
                <td>'.$row['name'].'</td>
                <td>'.$row['sex'].'</td>
                <td>'.$row['phone'].'</td>
                <td>'.$row['company'].'</td>
                <td>'.$row['vehicle'].'</td>
            </tr>';
        }
    }?>
代码语言:javascript
复制
    Cancel    
代码语言:javascript
复制
 <?php

   $del_lid = $_POST['checkbox']; 
   if (isset($_POST['submit'])) {
     foreach($del_lid as $value){
       $sql = "DELETE FROM leads WHERE lid='".$value."'";
       $result = mysqli_query($conn, $sql);
    }
 }
?>
EN

回答 1

Stack Overflow用户

发布于 2017-06-23 16:43:32

复选框中缺少等号,因此它们实际上都没有值。可以简化sql以使用in操作符,而不是循环。

代码语言:javascript
复制
    <table>
<?php

    $sql = mysqli_query($conn, "SELECT * FROM leads ORDER BY lid ASC");
    if( mysqli_num_rows($sql) == 0 ){
        echo '<tr><td colspan="8">No Data Entry</td></tr>';
    }else{
        while($row = mysqli_fetch_assoc($sql)){
            echo '
            <tr>
                <td> <input name="checkbox[]" value="'.$row['lid'].'" type="checkbox"></td>
                <td>'.$row['name'].'</td>
                <td>'.$row['sex'].'</td>
                <td>'.$row['phone'].'</td>
                <td>'.$row['company'].'</td>
                <td>'.$row['vehicle'].'</td>
            </tr>';
        }
    }
?>
        </table>
        <input type="submit" name="delete" class="btn btn-sm btn-primary" value="delete">
        <a href="index.php" class="btn btn-sm btn-danger">Cancel</a></td>
    </form>
</div>
<?php

    $del_lid = $_POST['checkbox']; 

    if ( isset($_POST['submit'] ) ) {
        $sql='delete from `leads` where `lid` in ( ' . implode( ',', $del_lid ). ' )';
        $result = mysqli_query($conn, $sql);
    }
?>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44716776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档