Heim  >  Artikel  >  Backend-Entwicklung  >  Detailliertes Beispiel für die Beurteilung der Benutzerbetriebsberechtigungen anhand der Sitzung

Detailliertes Beispiel für die Beurteilung der Benutzerbetriebsberechtigungen anhand der Sitzung

伊谢尔伦
伊谢尔伦Original
2017-04-28 11:43:526193Durchsuche

In den meisten Website-Entwicklungsprozessen ist es praktischer, die Berechtigungen von Administratoren und normalen Benutzern zum Betrieb der Website aufzuteilen. Lassen Sie uns anhand eines bestimmten Codebeispiels eine umfassende Erklärung geben. Um Freunden ein intuitiveres Erlebnis zu bieten, können Sie das zuvor erlernte Wissen kombinieren, um Ihren Code und Ihre Ideen zu verbessern.

Überprüfen Sie zunächst anhand der auf der Benutzeranmeldeseite übermittelten Benutzerinformationen, ob der Benutzer berechtigt ist, die Website zu betreiben.

Die spezifischen Entwicklungsschritte sind wie folgt:

(1) Entwerfen Sie eine Anmeldeseite, fügen Sie ein Formular hinzu und verwenden Sie POST, um Parameter zu übertragen. Die Datenverarbeitungsseite, auf die die Aktion verweist, ist die Standardeinstellung. php, fügen Sie ein Textfeld für den Benutzernamen hinzu und nennen Sie es „user“, fügen Sie ein Textfeld für das Passwortfeld hinzu und nennen Sie es „pwd“ und senden Sie den Sprung über die Schaltfläche „Senden“. Der Hauptcode lautet wie folgt.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <script type="text/javascript">
 function check(form){
 if(form.uesr.value == ""){
 alert("请输入用户名");
      }
 if(form.pwd.value == ""){
 alert("请输入密码");
      }
 form.submit();
    }
  </script>
</head>
<body>
<form name="form1" method="post" action="default.php">
  <table width="520" height="390" border="0" cellpadding="0" cellspacing="0">
    <tr>
      <td valign="top">
        <table width="520" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td height="24" align="right">用户名:</td>
            <td height="24" align="left">
              <input name="user" type="text" id="user" size="20">
            </td>
          </tr>
          <tr>
            <td height="24" align="right">密 码:</td>
            <td height="24" align="left">
              <input name="pwd" type="password" id="pwd" size="20">
            </td>
          </tr>
          <tr align="center">
            <td height="24" colspan="2">
              <input name="submit" type="submit" value="提交" onclick="return check(form);">
              <input type="reset" name="reset" value="重置">
            </td>
          </tr>
          <tr>
            <td height="76">
              <span>超级用户: admin  密  码:111 </span>
              <br><br>
              <span>普通用户: tom  密  码:000 </span>
            </td>
          </tr>
        </table>
      </td>
    </tr>
  </table>
</form>
</body>
</html>

(2) Rufen Sie unter dem Klickereignis der Schaltfläche „Senden“ die benutzerdefinierte Funktion check() auf, um zu überprüfen, ob das Formularelement leer ist. Der Javascript-Code wird hier zur Verifizierung verwendet. Bitte ergänzen Sie Ihr Wissen über Javascript selbst. Der Code der benutzerdefinierten Funktion check() lautet wie folgt:

<script type="text/javascript">
   function check(form){
     if(form.uesr.value == ""){
       alert("请输入用户名");
     }
     if(form.pwd.value == ""){
       alert("请输入密码");
     }
     form.submit();
   }
 </script>

(3) Senden Sie die Formularelemente an die Datenverarbeitungsseite default.php. Verwenden Sie zuerst die Funktion session_start(), um die Sitzungsvariable zu initialisieren, verwenden Sie dann die POST-Methode, um den Wert des Formularelements zu empfangen, und weisen Sie den erhaltenen Benutzernamen bzw. das erhaltene Kennwort der Sitzungsvariablen zu. Der Code lautet wie folgt:

<?php
 session_start();
 $_SESSION[&#39;user&#39;]=$_POST[&#39;user&#39;];
 $_SESSION[&#39;pwd&#39;]=$_POST[&#39;pwd&#39;];
?>

(4) Um zu verhindern, dass sich andere Benutzer illegal am System anmelden, werden die JavaScript-Kenntnisse mithilfe von if-Bedingungsanweisungen hier fortgesetzt. Der Code lautet wie folgt:

<?php
 if($_SESSION[&#39;user&#39;]==""){
   echo &#39;<script type="text/javascript">alert("请使用正确途径登录"); history.back();</script>&#39;;
 }
?>

(5) Fügen Sie in der Datenverarbeitung den folgenden Navigationsbarcode zur Seite default.php hinzu, um die aktuelle Benutzerebene zu ermitteln und zu sehen, ob der angemeldete Benutzer ein Administrator oder ein normaler Benutzer ist, und dann Es wird eine differenzierte Ausgabe angezeigt:

<table align="center" cellpadding="0" cellspacing="0">
 <tr align="center" valign="middle">
   <td style="width: 140px; color: red;">当前用户:
     <!-- 输出当前登录用户级别-->
     <?php
       if($_SESSION[&#39;user&#39;]=="admin"&&$_SESSION[&#39;pwd&#39;]=="111"){
         echo "管理员";
       }else{
         echo "普通用户";
       }
     ?>
   </td>
   <td width="70"><a href="default.php">首页</a><td>
   <td width="70">|<a href="default.php">文章</a><td>
   <td width="70">|<a href="default.php">相册</a><td>
   <td width="100">|<a href="default.php">修改密码</a><td>
   <?php
     if($_SESSION[&#39;user&#39;]=="admin"&& $_SESSION[&#39;pwd&#39;]=="111") {   //如果当前用户是管理员
      //如果当前用户是管理员 则输出 用户管理
      echo   &#39;<td width="100">|<a href="default.php">用户管理</a><td>&#39;;
     }
   ?>
   <td width="100">|<a href="safe.php">注销用户</a><td>
 </tr>
</table>

(6) oben Fügen Sie die Hyperlink-Seite „Benutzer abmelden“ „safe.php“ zur Seite „default.php“ hinzu und schreiben Sie den folgenden Code in „safe.php“, um die Benutzersitzung zu löschen und kehren Sie zur Anmeldeseite zurück:

<?php
 session_start();                  //初始化 session
 unset($_SESSION[&#39;user&#39;]);            //删除用户名会话变量
 unset($_SESSION[&#39;pwd&#39;]);             //删除密码会话变量
 session_destroy();                 //删除当前所有会话变量
 header("location:index.php");         //跳转到用户登录页
?>

( 7) Führen Sie dieses Beispiel aus, geben Sie den Benutzernamen und das Passwort auf der Benutzeranmeldeseite der Website ein, melden Sie sich als Superuser auf der Website an oder melden Sie sich als an normaler Benutzer und führen Sie es aus.

PHP-Lernthema für chinesische Websites: PHP-Sitzung (einschließlich Bilder, Videos, Fälle)

Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel für die Beurteilung der Benutzerbetriebsberechtigungen anhand der Sitzung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn