Maison >développement back-end >tutoriel php >Implémenter un système de connexion et d'enregistrement des utilisateurs à l'aide de PHP

Implémenter un système de connexion et d'enregistrement des utilisateurs à l'aide de PHP

王林
王林original
2023-05-11 08:13:413290parcourir

Avec l'application généralisée d'Internet, les systèmes de connexion et d'enregistrement des utilisateurs sont devenus des fonctions essentielles pour de nombreux sites Web. Dans cet article, nous allons implémenter un système simple de connexion et d’enregistrement des utilisateurs via le langage PHP.

  1. Création d'une base de données

Tout d'abord, nous devons créer une base de données pour stocker les informations des utilisateurs. Nous utiliserons une base de données MySQL et créerons une table appelée « utilisateurs » pour stocker les noms d'utilisateur et les mots de passe.

Utilisateurs CREATE TABLE (

id INT(11) NOT NULL AUTO_INCREMENT,
username VARCHAR(50) NOT NULL,
password VARCHAR(255) NOT NULL,
PRIMARY KEY (id)

);

  1. Page d'inscription

Connect Ensuite, nous devons créer une page d'inscription pour permettre aux utilisateurs de saisir leur nom d'utilisateur et leur mot de passe. Dans la page d'inscription, nous devons utiliser un formulaire HTML pour collecter les informations saisies par l'utilisateur et utiliser le code PHP pour insérer ces informations dans la base de données.

Voici le code pour une page d'inscription simple :

8b05045a5be5764f313ed5b9168a17e6
100db36a723c770d327fc0aef2ce13b1
93f0f5c25f18dab9d176bd4f6de5d30e# 🎜 🎜#

<title>用户注册</title>

9c3bca370b5104690d9ef395f2c5f8d1

6c04bd5ca3fcae76e30b72ad730ca86d

<h1>用户注册</h1>
<form action="register.php" method="post">
    <label>用户名:</label>
    <input type="text" name="username" required>
    <br><br>
    <label>密码:</label>
    <input type="password" name="password" required>
    <br><br>
    <input type="submit" value="注册">
</form>

36cc49f0c466276486e50c850b7e4956

73a6ac4ed44ffec12cee46588e518a5e
#🎜 🎜 #Dans le code ci-dessus, nous utilisons un formulaire HTML pour collecter les informations de saisie de l'utilisateur et définissons l'attribut d'action du formulaire sur "register.php", ce qui signifie que lorsque l'utilisateur soumet le formulaire, le code PHP traite l'entrée information. Ensuite, nous écrirons le fichier register.php pour gérer ces entrées.

Traitement de l'inscription
  1. Avant d'insérer les données du formulaire dans la base de données, nous devons nous assurer que les données saisies sont valides. Nous vérifions que les noms d'utilisateur sont uniques et que les mots de passe sont cryptés. Voici le code du fichier register.php :

4cf4236357e2a11798d480ca1855b5b0connect_errno) {

die('连接失败: '.$mysqli->connect_error);

}

// Vérifiez si le nom d'utilisateur est unique

$result = $ mysqli-> query("SELECT * FROM users WHERE username='$username'");

if ($result->num_rows > 0) {

die('用户名已存在');

}#🎜 🎜##🎜 🎜#// Crypter le mot de passe
$password = password_hash($password, PASSWORD_DEFAULT);

// Insérer les informations utilisateur dans la base de données

$sql = "INSERT INTO utilisateurs (nom d'utilisateur, mot de passe) VALUES ("$username", '$password')";

if ($mysqli->query($sql)) {

echo '注册成功';

} else {

echo '注册失败: '.$mysqli->error;

}
?>

Dans le fichier register.php ci-dessus, nous récupérons d'abord le nom d'utilisateur et le mot de passe saisis par l'utilisateur. Ensuite, nous vérifions si le nom d'utilisateur existe déjà dans la base de données. Ensuite, nous utilisons la fonction password_hash pour crypter le mot de passe. Enfin, nous insérons le nom d'utilisateur et le mot de passe crypté dans la base de données. Si l'insertion réussit, nous afficherons un message « Inscription réussie ». Sinon, nous afficherons un message « Échec de l'enregistrement ».

Page de connexion

Ensuite, nous créerons une page de connexion permettant à l'utilisateur de saisir son nom d'utilisateur et son mot de passe enregistrés. Dans la page de connexion, nous utiliserons un formulaire HTML pour collecter les informations saisies par l'utilisateur et utiliserons le code PHP pour authentifier les informations d'identité de l'utilisateur.

    Voici le code pour une page de connexion simple :
  1. 8b05045a5be5764f313ed5b9168a17e6
100db36a723c770d327fc0aef2ce13b1

93f0f5c25f18dab9d176bd4f6de5d30e#🎜 🎜#

<title>用户登录</title>

9c3bca370b5104690d9ef395f2c5f8d1

6c04bd5ca3fcae76e30b72ad730ca86d

<h1>用户登录</h1>
<form action="login.php" method="post">
    <label>用户名:</label>
    <input type="text" name="username" required>
    <br><br>
    <label>密码:</label>
    <input type="password" name="password" required>
    <br><br>
    <input type="submit" value="登录">
</form>

36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e
#🎜🎜 #Dans le code ci-dessus, nous utilisons un formulaire HTML pour collecter les informations de saisie de l'utilisateur et définissons l'attribut d'action du formulaire sur "login.php", ce qui signifie que lorsque l'utilisateur soumet le formulaire, le code PHP traite les informations de saisie. . Ensuite, nous écrirons le fichier login.php pour vérifier les informations d'identité de l'utilisateur.


Traitement de connexion


Avant de traiter la demande de connexion de l'utilisateur, nous devons nous assurer que les données saisies sont valides. Nous vérifierons si le nom d'utilisateur existe et si le mot de passe saisi correspond au mot de passe de la base de données. Voici le code du fichier login.php :

63b9b9a00748a36af1c12113e937b8a0connect_errno) {

die('连接失败: '.$mysqli->connect_error);

}


// Vérifiez si le nom d'utilisateur existe
$result = $mysqli -> query("SELECT * FROM utilisateurs WHERE username='$username'");
if ($result->num_rows == 0) {

die('用户名不存在,请检查输入');

}#🎜🎜 ##🎜 🎜#// Vérifiez si le mot de passe est correct
$user = $result->fetch_assoc();
if (!password_verify($password, $user['password'])) {

die('密码错误,请检查输入');

}

echo 'Welcome'.$username;
?>

Dans le fichier login.php ci-dessus, nous obtenons d'abord l'utilisateur Entrez le nom d'utilisateur et le mot de passe. Ensuite, nous vérifions si le nom d'utilisateur existe dans la base de données. Nous récupérons ensuite le mot de passe de cet utilisateur de la base de données et utilisons la fonction password_verify pour vérifier si le mot de passe saisi correspond au mot de passe de la base de données. Si les mots de passe correspondent, un message de bienvenue est affiché. Sinon, nous imprimons un message d'erreur et terminons le programme.

À ce stade, nous avons achevé la mise en œuvre d'un système simple de connexion et d'enregistrement des utilisateurs. Ce système permet aux utilisateurs de créer un compte sur le site Web et de se connecter afin d'accéder à des pages spécifiques. Bien entendu, il ne s’agit que de la méthode de mise en œuvre la plus élémentaire. Dans les applications réelles, des fonctions plus complexes sont nécessaires pour garantir la disponibilité et la sécurité du système.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn