


Detailed example of how to judge user operation permissions through Session
In most website development processes, it is more practical to divide the permissions of administrators and ordinary users to operate the website. Let's give a comprehensive explanation through a specific code example. To give friends a more intuitive experience, you can combine the knowledge you have learned previously to improve your code and ideas.
First, verify the user's authority to operate the website through the user information submitted on the user login page.
The specific development steps are as follows:
(1) Design a login page, add a form, use POST method to transfer parameters, the data processing page pointed to by action is default.php , add a username text box and name it user, add a password field text box and name it pwd, and perform a submission jump through the submit button. The main code is as follows.
<!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) Under the click event of the "Submit" button, call the custom function check() to verify whether the form element is empty. The javascript code is used here for verification. Please supplement your knowledge about javascript by yourself. The custom function check() code is as follows:
<script type="text/javascript"> function check(form){ if(form.uesr.value == ""){ alert("请输入用户名"); } if(form.pwd.value == ""){ alert("请输入密码"); } form.submit(); } </script>
(3) Submit the form elements to the data processing page default.php. First use the session_start() function to initialize the session variable, then use the POST method to receive the value of the form element, and assign the obtained user name and password to the session variable respectively. The code is as follows:
<?php session_start(); $_SESSION['user']=$_POST['user']; $_SESSION['pwd']=$_POST['pwd']; ?>
(4) To prevent Other users illegally log in to the system and use if conditional statements to judge the value of the session variable. The knowledge of javascript is continued here. The code is as follows:
<?php if($_SESSION['user']==""){ echo '<script type="text/javascript">alert("请使用正确途径登录"); history.back();</script>'; } ?>
(5) In the data processing page default.php Add the following navigation bar code to determine the level of the current user to see whether the logged-in user is an administrator or an ordinary user, and then the differentiated output is displayed:
<table align="center" cellpadding="0" cellspacing="0"> <tr align="center" valign="middle"> <td style="width: 140px; color: red;">当前用户: <!-- 输出当前登录用户级别--> <?php if($_SESSION['user']=="admin"&&$_SESSION['pwd']=="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['user']=="admin"&& $_SESSION['pwd']=="111") { //如果当前用户是管理员 //如果当前用户是管理员 则输出 用户管理 echo '<td width="100">|<a href="default.php">用户管理</a><td>'; } ?> <td width="100">|<a href="safe.php">注销用户</a><td> </tr> </table>
(6) In the default.php page above Add the "Logout User" hyperlink page safe.php, and write the following code in safe.php to delete the user Session and return to the login page:
<?php session_start(); //初始化 session unset($_SESSION['user']); //删除用户名会话变量 unset($_SESSION['pwd']); //删除密码会话变量 session_destroy(); //删除当前所有会话变量 header("location:index.php"); //跳转到用户登录页 ?>
(7) Run this example on the website Enter your username and password on the user login page, log in to the website as a super user or log in as an ordinary user and run it.
php Chinese website learning topic: php session (including pictures, texts, videos, cases)
The above is the detailed content of Detailed example of how to judge user operation permissions through Session. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

If you are an experienced PHP developer, you might have the feeling that you’ve been there and done that already.You have developed a significant number of applications, debugged millions of lines of code, and tweaked a bunch of scripts to achieve op

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency.
