亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我如何讓這個按鈕與數據庫交互

我如何讓這個按鈕與數據庫交互

PHP
眼眸繁星 2023-03-26 16:11:33
基本上我正在制作一個網站,上面會有管理員,但我想要它,這樣管理員就可以添加其他管理員,所以我知道當管理員登錄時它會顯示網站上每個人的用戶名,但我想要用戶名旁邊的按鈕可更改其在數據庫中的管理員角色,當前管理員是 true 或 false,我項目的腳本如下。希望有人可以幫助我,因為我似乎無法改變我所擁有的最多的用戶是改變列表中的最后一個用戶,但我已經刪除了它,因為它不是我想要的。<?PHPinclude("auth.php");require_once "config.php";$result = mysqli_query($conn, "SELECT * FROM accounts");?><!DOCTYPE HTML><html><head><meta charset="UTF-8"><title>Welcome</title><link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.css"><style type="text/css">    body{ font: 14px sans-serif; text-align: center; }</style></head> <body><div class="page-header">    <h1>Hi, <b><?php echo htmlspecialchars($_SESSION["username"]); ?></b>. Welcome to our site.</h1></div><p>    <a href="ResetPass.php" class="btn btn-warning">Reset Your Password</a>    <a href="logout.php" class="btn btn-danger">Sign Out of Your Account</a></p><?php if($_SESSION["IsAdmin"] == 1){    while ($row = mysqli_fetch_array($result)){?><table id=Username_List><b><?php        echo $row['username'];    ?></b><a class="btn btn-danger">Toggle Admin</a></table><?php}}else{?><span>Hello Customer</span><?php}?></body></html>
查看完整描述

2 回答

?
侃侃無極

TA貢獻2051條經驗 獲得超10個贊

要在數據庫中切換用戶類型,您需要獲取用戶 ID 和用戶的當前角色。然后您必須將這些信息發送到 php 腳本以切換數據庫中的用戶角色。


假設我們有一個名為 toggleUser.php 的 php 文件,它使用 get 方法接收用戶 ID 和當前角色,那么你的 url 將如下所示:


<a class="btn btn-danger" href="toggleUser.php?userid=<?php echo $row['userid']?>&role=<?php echo $row['role']?>">Toggle Admin</a>

創建文件 toggleUser.php 并添加以下代碼:


<?php

    $userid = $_GET['userid'];

    $role   = $_GET['role'];


    $role = ($role==1)?0:1;

        $stmt = mysqli_prepare($conn, "update accounts set  IsAdmin=? where username=?");

        mysqli_stmt_bind_param($stmt, 'ss', $role,$userid);

        mysqli_stmt_execute($stmt);



    header("location:showusers.php");

?>   


查看完整回答
反對 回復 2023-03-26
?
繁花不似錦

TA貢獻1851條經驗 獲得超4個贊

您實際上也可以使用 PHP 解決問題。


我假設“用戶名”字段是唯一的。我通過將“Toggle Admin”放入由同一文件處理的表單中修改了您的代碼的某些部分。單擊按鈕后,將執行添加到 PHP 塊的代碼。該代碼從表單接收用戶名和當前角色,然后相應地切換數據庫中的“IsAdmin”。這是我的解決方案:


<b><?php

        echo $row['username'];


    ?></b>


    <form action="" method="post">

        <input type="hidden" name="username" value="{$row['username']}">

        <input type="hidden" name="role" value="{$row['IsAdmin']}">

        <input type="submit" name="toggle_admin" class="btn btn-danger" value="Toggle Admin">

    </form>

我還按如下方式更新了您的 PHP 塊:


<?PHP

include("auth.php");

require_once "config.php";


$result = mysqli_query($conn, "SELECT * FROM accounts");


// Execute this code if the 'Toggle Admin' button is clicked

if (isset($_POST['toggle_admin']))

{

    if (isset($_POST['username']) && !empty($_POST['username']) && isset($_POST['role']) && !empty($_POST['role']))

    {

        // Retrieve necessary inputs

        $username = htmlentities($_POST['username']);

        $role = htmlentities($_POST['role']);


        // Toggle Admin

        if ($role == 0)

        {

            // Set user to be admin if not currently admin

            $IsAdmin = 1;

        }

        else

        {

            // Set user to be non admin if user is currently admin

            $IsAdmin = 0;

        }


        // Update the database accordingly.

        $perform_toggle_admin = mysqli_query($conn, "UPDATE accounts SET IsAdmin = '$IsAdmin' WHERE username = '$username'");

    }

}


?>

希望這是有幫助的。


查看完整回答
反對 回復 2023-03-26
  • 2 回答
  • 0 關注
  • 134 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號