尝试批准,拒绝或删除多个用户

时间:2015-02-23 18:22:04

标签: php mysql

我正在创建一个我希望能够批准,拒绝或删除的用户列表。我不想一个接一个地做,因为这将是太多的工作。 My list of users

我有以下代码用于批准,拒绝和删除列:

<tr>
    <input type="hidden" name="user_id" value="'.$row['user_id'].'">
    <td style="text-align:center; padding:20px; background-color:#DFF0D8;">
      <input type="radio" name="approve[]" value="1">
    </td>
    <td style="text-align:center; padding:20px; background-color:#FCF8E3;">
      <input type="radio" name="approve[]" value="0">
    </td>
    <td style="text-align:center; padding:20px; background-color:#FCDEDE;">
      <input type="radio" name="approve[]" value="3">
    </td>
</tr>

我希望能够将MySQL中“用户”表中的“已批准”列设置为1(如果已批准),并且如果被拒绝则将其保持为0。如果选择“删除”,那么我希望能够删除该行数据。如何为用户列表执行此操作?如果它只是一个接一个就很容易,但我不知道如何为多个用户做这件事。

我想过循环遍历“approve”数组,但是我无法更改数据库中的值,因为我不知道如何将它与user_id相匹配。

感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

这是一个多删除示例:

的index.php

<?php include('dbcon.php'); ?>
<form method="post" action="delete.php" >
<table cellpadding="0" cellspacing="0" border="0" class="table table-striped table-bordered" id="example">
                        <div class="alert alert-info">

                            <strong>Check the radion Button and click the Delete button to Delete Data</strong>
                        </div><thead>

                            <tr>
                                <th></th>
                                <th>FirstName</th>
                                <th>LastName</th>
                                <th>MiddleName</th>
                                <th>Address</th>
                                <th>Email</th>
                            </tr>
                        </thead>
                        <tbody>
                        <?php 
                        $query=mysql_query("select * from member")or die(mysql_error());
                        while($row=mysql_fetch_array($query)){
                        $id=$row['member_id'];
                        ?>

                                    <tr>
                                    <td>
                                    <input name="selector[]" type="checkbox" value="<?php echo $id; ?>">
                                    </td>
                                     <td><?php echo $row['firstname'] ?></td>
                                     <td><?php echo $row['lastname'] ?></td>
                                     <td><?php echo $row['middlename'] ?></td>
                                     <td><?php echo $row['address'] ?></td>
                                     <td><?php echo $row['email'] ?></td>
                            </tr>

                              <?php } ?>
                        </tbody>
                    </table>
                    <input type="submit" class="btn btn-danger" value="Delete" name="delete">

delete.php

<?php 
include('dbcon.php');
if (isset($_POST['delete'])){
$id=$_POST['selector'];
$N = count($id);
for($i=0; $i < $N; $i++){
$result = mysql_query("DELETE FROM member where member_id='$id[$i]'");}
header("location: index.php"); } ?>

答案 1 :(得分:0)

对于多个用户,您只需要为所有表单变量名称添加维度:

<tr>
    <td style="text-align:center; padding:20px; background-color:#DFF0D8;">
      <input type="radio" name="approve[<?= $row['user_id'] ?>]" value="1">
    </td>
    <td style="text-align:center; padding:20px; background-color:#FCF8E3;">
      <input type="radio" name="approve[<?= $row['user_id'] ?>]" value="0">
    </td>
    <td style="text-align:center; padding:20px; background-color:#FCDEDE;">
      <input type="radio" name="approve[<?= $row['user_id'] ?>]" value="3">
    </td>
</tr>

发布表单后,您将收到以下内容:

approve[123]=1&approve[456]=2&...

这会将$_POST['approve']转换为数组:

array(
    123 => 1
    456 => 2
);
...