【问题标题】:Saving everyone's profile page while saving infos in database HTML/PHP保存每个人的个人资料页面,同时将信息保存在数据库 HTML/PHP 中
【发布时间】:2018-03-05 15:49:19
【问题描述】:

我有不同的注册方式。首先,您需要从一个游戏中注册,该游戏将您的用户名和密码保存在数据库中。

我做了一个登录系统,你可以在其中使用游戏内的用户名和密码登录,以查看有关你帐户的不同信息。

目前,没有保存配置文件。它仅保存在数据库中,您可以使用用户名和帐户登录并查看您自己的详细信息。

但作为管理员,我想检查另一个玩家帐户并查看他们的详细信息,但我不能,因为它不会在用户文档中保存心理,而且我无权访问他们的密码来登录。

如何实现将每个 username.php 文件保存在用户文件夹中,与 profile.php 模型中使用的相同?

我想做一个 html 页面,带有一个搜索表单,我只需在其中输入用户名,然后单击“搜索”,就会出现带有 url www.domain.com/users/username 的新页面。

怎么样?不重写 URL 可以吗? (特别是我现在在 localhost 上工作,稍后我将通过在主机上上传来完成)

我的问题是,每个用户只能看到自己的个人资料,使用 profile.php 我只有 profle.php,它从登录用户的数据库信息中提取。您是否是管理员并不重要,因为您只能看到您的个人资料。

profile.php的部分PHP

 <?php 
include("config.php"); //including our config.php 
session_start(); //starting session 
error_reporting(0); 

if(isset($_SESSION['username'])) //if session is set, so if user is logged in... 
{ 
    $username = $_SESSION['username']; //setting variable username as one from session 
    $query = mysql_query("SELECT * FROM users WHERE username = '$username'");  //selecting all from table users where username is name that your is loged in 
    //echo "Welcome ".$_SESSION['username']; //saying welcome to user!  
    //echo "<h5 class='title-small center'>Welcome, ".$_SESSION['username']."</h5>";
    while($row = mysql_fetch_assoc($query)) //looping thousgt table to get informations 
{
        $Username = $row['Username']; //selecting user name, change 'username' to your field name  
        $Headshots = $row['Headshots']; //selecting user money, change 'money' to your field name  
        $BanditsKilled = $row['BanditsKilled']; //selecting user score, change 'score' to your field name  
        $Murders = $row['Murders']; //selecting user kills, change 'kills' to your field name  
        $Backpack1 = $row['Backpack']; 
        if($Backpack1 == 0) {
            $Backpack = "Rucsac&nbsp;simplu";
        } else if($Backpack1 == 1) {
            $Backpack = "Rucsac&nbsp;din&nbsp;panza";
        } else if($Backpack1 == 2) {
            $Backpack = "Rucsac&nbsp;mic&nbsp;de&nbsp;armata";
        } else if($Backpack1 == 3) {
            $Backpack = "Rucsac&nbsp;de&nbsp;armata";
        } else if($Backpack1 == 4) {
            $Backpack = "Rucsac&nbsp;VIP";
        }





        $skin = $row['pSkin'];
        $BackpackSlotsUsed = $row['BackpackSlotsUsed'];
        $BackpackSlots = $row['BackpackSlots'];
        $pHour = $row['pHour'];
        $pWeap1 = $row['pWeap1'];
        $pWeap1 = $row['pWeap1'];
        $pWeap2 = $row['pWeap2'];
        $pWeap3 = $row['pWeap3'];
        $pWeap4 = $row['pWeap4'];
        $pWeap5 = $row['pWeap5'];
        $pWeap6 = $row['pWeap6'];
        $IP = $row['IP'];
        $pAmmo1 = $row['pAmmo1'];
        $pAmmo2 = $row['pAmmo2'];
        $pAmmo3 = $row['pAmmo3'];
        $pAmmo4 = $row['pAmmo4'];
        $pAmmo5 = $row['pAmmo5'];
        $pAmmo6 = $row['pAmmo6'];
        $pJailed = $row['pJailed'];
        $pVIP1 = $row['pVIP'];
        if($pVIP1 == 0) {
            $pVIP = "Fara&nbsp;VIP";
        } else if($pVIP1 == 1) {
            $pVIP = "VIP&nbsp;Bronze";
        } else if($pVIP1 == 2) {
            $pVIP = "VIP&nbsp;Silver";
        } else if($pVIP1 == 3) {
            $pVIP = "VIP&nbsp;Gold";
        } else if($pVIP1 == 4) {
            $pVIP = "VIP&nbsp;Platinum";
        }

        $pHour = $row['pHour'];
        $Blood = $row['pBlood'];
        $pThrist = $row['pThrist'];
        $pHunger = $row['pHunger'];
        $pAliveTime = $row['pAliveTime'];
        $pAdminLevel1 = $row['pAdminLevel'];
                if($pAdminLevel1 == 0) {
            $pAdminLevel = "Fara&nbsp;Admin";
        } else if($pAdminLevel1 == 1) {
            $pAdminLevel = "Trial&nbsp;Moderator";
        } else if($pAdminLevel1 == 2) {
            $pAdminLevel = "Moderator&nbsp;Team";
        } else if($pAdminLevel1 == 3) {
            $pAdminLevel = "Administrator&nbsp;Team";
        } else if($pAdminLevel1 == 4) {
            $pAdminLevel = "Support&nbsp;Team";
        } else if($pAdminLevel1 == 5) {
            $pAdminLevel = "Management&nbsp;Team";
        } else if($pAdminLevel1 == 6) {
            $pAdminLevel = "Developer&nbsp;Team";
        } else if($pAdminLevel1 == 7) {
            $pAdminLevel = "Community&nbsp;Owner";

        }



        $Helper1 = $row['Helper'];
                if($Helper1 == 0) {
            $Helper = "Fara&nbsp;Helper";
        } else if($Helper1 == 1) {
            $Helper = "Esti&nbsp;Helper";
        }

$weapons = array(
    'Fara&nbsp;arma',
    '',
    '',
    '',
    'Bata&nbsp;de&nbsp;Baseball',
    '',
    '',
    '',
    'Katana',
    '',
    '',
    '',
    '',
    '',
    '',
    '',
    '',
    '',
    '',
    '',
    '',
    '',
    'Pistol',
    'Silenced Pistol',
    '',
    'Shotgun',
    '',
    'Spaz Shotgun',
    '',
    'MP5',
    'AK-47',
    'M4A1',
     '',
     '',
     'Country Rifle',
     'Sniper Rifle',
     '',
     '',
     '',
     '',
     '',
     '',
     '',
     '',
     '',
     'Night&nbsp;Vision&nbsp;Goggles',
     'Thermal&nbsp;Vision&nbsp;Goggles' 
);  

    }  ?>

    <div class="test">
      <h1 id="title-1">Bun venit,<em><span></span><?php echo $_SESSION['username'] ?></em>Detalii cont:</h1>
     <center> <a href="logout.php"> <font color="white">Log out.</font> </a></center>

我想制作一个“用户”文档,以某种方式在用户注册时自动输入每个用户个人资料,让我可以访问“domain.com/users/profile”并使用 profile.php 的模型,但使用他们的信息。

【问题讨论】:

  • 您没有提供可使用的代码,在我们发现您的代码中存在问题之前,我们无法帮助您。管理员功能不应该需要用户密码来查看他们的信息,这是一个可怕的设计缺陷。
  • @MinistryofChaps 我只能通过数据库查看他们的信息,但我想通过我的用户控制面板查看。但我只有 profile.php ,它只显示登录用户的信息,作为管理员,我只看到我的,而不是其他用户。我不知道如何为每个用户创建 URL 以查看他们的信息。
  • @MinistryofChaps 刚刚更新了代码。

标签: php html database phpmyadmin profile


【解决方案1】:

您必须创建角色或权限系统。因此,为简单起见,您具有以下角色

administrator
player

然后,您可以创建一个具有administrator 权限的admin 帐户。此帐户由您创建,仅供您使用。此帐户将授予您访问特殊管理部分的权限,您可以在那里创建页面以查看所有用户的帐户。还可能有特殊操作,比如终止账户、重置密码、管理信用……等等。

当新玩家注册他或她的帐户时,他/她将拥有分配给他/她的player 权限。此帐户只能访问他/她的个人资料。

如果您需要其他人成为管理员,您可以创建一个新的管理员帐户,例如 admin2,并将 administrator 角色分配给该帐户。

也许您想为角色设置更多层。比如

administrator
manager
player

administrator 仅适用于您,允许您创建/删除其他管理员,manager 可以执行 admin 所做的所有操作,但他/她不能添加或删除管理员或管理员。这样,您可以防止有人在决定接管您的业务时故意将您锁定在系统之外。

不过,您必须根据自己的需要进行计划。以上只是一个例子。

【讨论】:

  • 我的数据库中有“pAdminLevel”,这将决定用户是否可以看到其他配置文件。但我的问题是,每个用户只能看到自己的个人资料。
  • 我不确定这到底意味着什么。但我认为我给你的想法只是给你方向。如何实施取决于您。关键是,您必须创建角色/权限并将这些角色分配给不同的用户。
  • 我的问题是,每个用户只能看到自己的个人资料,使用 profile.php 我只有 profle.php,它从登录用户的数据库信息中提取。
  • 你必须让你的profile.php检测正在登录的用户的角色,如果角色是administrator,那么显示的界面与角色是player不同的界面
  • 好的,我该怎么办?我告诉过你你必须做什么。您必须进行的更改会影响数据库(角色/权限表)以及与用户表的一对多关系。然后你必须更新你的profile.php 来处理角色。我不认为我可以在这里提供帮助,因为您现在谈论的设计问题远远超出了这个问题的范围。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-10-16
  • 2015-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多