1

下面的代码!给我复选框和一个删除按钮,在输入标签中,所有复选框都具有相同的名称(复选)!可以使用 id 从数据库中检索复选框。

问题是::当我选择多个复选框进行删除时......只有最后一个复选框被删除!意味着它可以从数据库中删除 1 个数据。

类似网址 -> http://localhost/demo/delete.php?check=10&check=13&check=14&submit=Delete

当我选择一个多于 1 个复选框的复选框时,我需要从数据库中删除复选框数据!任何人都可以帮助我克服这个问题谢谢

  1. 索引.php

    <?php
    $sql = mysql_connect('localhost', 'root', '');
    mysql_select_db('database_section', $sql);
    ?>
    <form name="checkbox" method="get" action="delete.php">
        <table>
            <tr>
                <?php
                $sql = "select * from data";
                $result = mysql_query($sql) or die(mysql_error());
                while ($row = mysql_fetch_array($result))
                {
                    ?>
                    <td><input type="checkbox" name="check" value="<?php echo $row['id']?>"><?php echo      $row['data'];?>
                    </td>
                    <?php
                }
                ?>
            <tr>
                <td><input type="submit" name="submit" value="Delete"></td>
            </tr>
        </table>
    </form>
    
  2. 现在,在下面的 delete.php..code 中......

    <?php
    $sql = mysql_connect('localhost', 'root', '');
    mysql_select_db('database_section', $sql);
    if ($_REQUEST['submit']) {
        $abc = $_GET['check'];
        $sql = "Delete from data where id=$abc";
        $result = mysql_query($sql) or die(mysql_error());
        if (isset($result)) {
            echo "data deleted";
        }
        else
        {
            echo "not possible";
        }
    
    }
    ?>
    
4

3 回答 3

2

使用复选框作为阵列支架。将其命名为 check[] 以保存所有选定的值。在发布后,您将获得选定的数组列表。

现在你的 $abc 将是一个数组,使用 delete.php 中的 foreach 来获取检查的 id。

于 2012-04-12T17:27:53.380 回答
1

更改name="check"name="check[]"

在此处查看更多信息:http ://www.kavoir.com/2009/01/php-checkbox-array-in-form-handling-multiple-checkbox-values-in-an-array.html

于 2012-04-12T17:28:29.010 回答
0
[...]
while ($row = mysql_fetch_array($result))
{
        ?>
        <td>
            <input type="checkbox" name="check[]" value="<?php echo $row['id']?>"><?php echo $row['data']; ?>
        </td>
    <?php
}
?>
[...]
于 2012-04-12T17:31:28.523 回答