繁体   English   中英

删除所需的PHP登录系统帮助

[英]PHP login system help needed for deletion

帮助删除用户:

您好,我正在为我的项目创建一个用户创建系统,我对PHP还是很陌生,我的问题是从MySQL数据库中获取用户,然后删除它,下面将向您展示我的代码:

            <?php
            require_once("config/db.php");

            if ($login->isUserLoggedIn() == true) {
                if  ($_SESSION['user_perm'] == 1) {

                    //Create Connection
                    $db_connection = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
                    // Check connection
                    if ($db_connection->connect_error) {
                        die("Connection failed: " . $db_connection->connect_error);
                    } 

                    $sql = "SELECT user_name FROM users";
                    $result = $db_connection->query($sql);

                    if ($result->num_rows > 0) {
                        // output data of each row
                        while($row = $result->fetch_assoc()) {
                            echo $row["user_name"];
                            $user_name_delete = $row["user_name"];
                            $_SESSION['user_name_delete'] = $user_name_delete;
                                echo '<a href="deleteuser.php">Delete User</a><br>';
                            }

                        }
                    }
                    $db_connection->close(); ?>

在deleteuser.php页面上,我的代码是,请注意,这只是一个测试:

<?php
    echo $_SESSION['user_name_delete'];
?>

我的问题是抓住您选择删除的用户,因为它仅输出从数据库中抓住的最后一个用户。

任何帮助深表感谢。

该值:

$_SESSION['user_name_delete']

将仅包含数据中的最后一个用户。 因为您一直在循​​环中覆盖它:

$_SESSION['user_name_delete'] = $user_name_delete;

简短的答案是...不要为此使用会话状态。 (实际上,除非绝对必要,否则您不应该将会话状态用于任何事情。)要删除的用户的身份应该包含在删除用户的请求中。 在这种情况下,您可以将其添加到链接中。 像这样:

echo '<a href="deleteuser.php?id=' . $row['user_id'] . '">Delete User</a><br>';

(或用于在数据行中标识用户的任何方法。)

然后,在deleteuser.php您可以从以下位置获取该值:

$_GET['id']

验证输入,验证用户是否有权执行删除,然后在DELETE查询的WHERE子句中使用该值。

获取用户ID并将其插入删除查询中。 $id = $db->real_escape_string($_GET['id']); $sql = "delete from users where id = " . $id; 然后运行查询以从数据库中删除用户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM