Script de connexion PHP utilisant des variables de session et de session
P粉726133917
P粉726133917 2023-08-21 19:01:51
0
2
485
<p>Je viens de terminer un système complet de connexion et d'enregistrement en PHP, mais mon problème est que je n'ai encore utilisé aucune session. Je suis nouveau sur PHP et je n'ai jamais utilisé de sessions auparavant. Ce que je veux faire, c'est qu'une fois que l'utilisateur s'est inscrit et a rempli le formulaire de connexion, il reste toujours sur la même page. Ainsi, une partie de la page le sera si la session est connectée et l'autre partie le sera autrement (l'utilisateur n'est pas connecté donc le formulaire de connexion est affiché). Quelqu'un peut-il me dire par où commencer ? </p>
P粉726133917
P粉726133917

répondre à tous(2)
P粉573809727

Il s'agit du code de session le plus simple écrit en PHP. Nous avons utilisé 3 fichiers.

login.php

<?php  session_start();   // 使用此函数启动会话


if(isset($_SESSION['use']))   // 检查会话是否已存在,如果存在则直接重定向到主页
 {
    header("Location:home.php"); 
 }

if(isset($_POST['login']))   // 检查用户是否点击了登录按钮
{
     $user = $_POST['user'];
     $pass = $_POST['pass'];

      if($user == "Ank" && $pass == "1234")  // 用户名默认为“Ank”,密码默认为1234
         {                                   

          $_SESSION['use']=$user;


         echo '<script type="text/javascript"> window.open("home.php","_self");</script>';            // 登录成功后重定向到home.php

        }

        else
        {
            echo "无效的用户名或密码";        
        }
}
 ?>
<html>
<head>

<title> 登录页面   </title>

</head>

<body>

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

    <table width="200" border="0">
  <tr>
    <td>  用户名</td>
    <td> <input type="text" name="user" > </td>
  </tr>
  <tr>
    <td> 密码  </td>
    <td><input type="password" name="pass"></td>
  </tr>
  <tr>
    <td> <input type="submit" name="login" value="登录"></td>
    <td></td>
  </tr>
</table>
</form>

</body>
</html>

home.php

<?php   session_start();  ?>

<html>
  <head>
       <title> 主页 </title>
  </head>
  <body>
<?php
      if(!isset($_SESSION['use'])) // 如果会话未设置,则重定向到登录页面
       {
           header("Location:Login.php");  
       }

          echo $_SESSION['use'];

          echo "登录成功";

          echo "<a href='logout.php'> 退出</a> "; 
?>
</body>
</html>

logout.php

<?php
 session_start();

  echo "成功退出";
  session_destroy();   // 销毁会话
  header("Location: Login.php");
?>
P粉348088995

Pour démarrer une session, vous devez le dire en haut de la page ou avant d'appeler le code de session

session_start();

Mettez l'ID utilisateur en session pour savoir qui est connecté

$_SESSION['user'] = $user_id;

Vérifiez si quelqu'un est connecté

if (isset($_SESSION['user'])) {
   // 已登录
 } else {
   // 未登录
 }

Trouver l'ID de l'utilisateur connecté

$_SESSION['user']

Sur votre page

<?php
 session_start();


 if (isset($_SESSION['user'])) {
 ?>
   已登录的HTML和代码在这里
 <?php

 } else {
   ?>
   未登录的HTML和代码在这里
   <?php
 }
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal