Maison  >  Article  >  développement back-end  >  Comment implémenter l'enregistrement de connexion php

Comment implémenter l'enregistrement de connexion php

PHPz
PHPzoriginal
2023-04-05 14:37:07673parcourir

À l'ère d'Internet d'aujourd'hui, les fonctions de connexion et d'enregistrement sur les sites Web sont l'une des fonctions les plus courantes. Il est particulièrement important de savoir comment mettre en œuvre les fonctions de connexion et d'enregistrement rapidement et en toute sécurité. En tant que langage de programmation Web populaire, PHP fournit une multitude d'outils et de bibliothèques de fonctions pour implémenter cette fonction.

Cet article présentera brièvement comment utiliser les bases de données PHP et MySQL pour implémenter les fonctions de connexion et d'enregistrement. Nous aborderons cette question en deux parties : d'abord, la mise en œuvre de la fonction d'enregistrement, puis la mise en œuvre de la fonction de connexion, et enfin la manière d'améliorer la sécurité du système.

1. Mise en œuvre de la fonction d'enregistrement

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

Tout d'abord, créez une base de données pour stocker les informations utilisateur, y compris l'ID utilisateur, le nom d'utilisateur, le mot de passe et d'autres informations. La base de données MySQL peut être créée via des outils tels que phpMyAdmin, MySQL Workbench ou automatiquement via le code suivant :

Créer une base de données nommée utilisateur :

CREATE DATABASE user

Create user La base de données est utilisée pour stocker les informations utilisateur Table user_info ; , et définissez le nom du champ et le type de données :

CREATE TABLE user_info (

id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(30) NOT NULL,
password VARCHAR(30) NOT NULL

);

  1. Page d'inscription

La page d'inscription affiche un formulaire HTML, permettant aux utilisateurs de renseigner leur nom d'utilisateur et leur mot de passe via PHP. récupère les données renseignées par l'utilisateur et les insère dans la base de données.

Ce qui suit est un simple code de page d'inscription :

<label>用户名:</label><input type="text" name="username" /><br />
<label>密码:</label><input type="password" name="password" /><br />
<input type="submit" value="注册" />

Lorsque l'utilisateur soumet le formulaire, via l'inscription. Le fichier php insère les données d'entrée dans la base de données. Le code du fichier register.php est le suivant :

$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "user";

// Créer une connexion
$conn = new mysqli($servername, $username, $password, $dbname);

// Vérifier la connexion
if ($conn->connect_error) {

die("连接失败: " . $conn->connect_error);

}

/ / Obtenir les données d'entrée
$username = $_POST['username'];
$password = $_POST['password'];

// Insérer des données
$sql = "INSERT INTO user_info (nom d'utilisateur, mot de passe) VALUES (' $username', '$password')";

if ($conn->query($sql) === TRUE) {

echo "注册成功";

} else {

echo "Error: " . $sql . "<br>" . $conn->error;

}

// Fermer la connexion
$ conn->close ();
?>

Grâce au code ci-dessus, les informations d'enregistrement des utilisateurs seront enregistrées dans la base de données.

2. Implémentation de la fonction de connexion

  1. Page de connexion

La page de connexion doit afficher un formulaire HTML permettant aux utilisateurs de saisir leur nom d'utilisateur et leur mot de passe. Ce qui suit est un simple code de page de connexion :

<label>用户名:</label><input type="text" name="username" /><br />
<label>密码:</label><input type="password" name="password" /><br />
<input type="submit" value="登录" />

  1. Vérification de connexion

Le processus de vérification de connexion nécessite le les données saisies par l'utilisateur sont comparées aux données précédemment stockées dans la base de données. Si elles correspondent, la connexion est réussie, sinon cela indique que la connexion a échoué.

Ce qui suit est le code PHP pour la vérification de la connexion :

$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "user";

// Créer une connexion
$conn = new mysqli($servername, $username, $password, $dbname);

// Vérifier la connexion
if ($conn->connect_error) {

die("连接失败: " . $conn->connect_error);

}

/ / Get Enter data
$username = $_POST['username'];
$password = $_POST['password'];

// Vérifier l'utilisateur
$sql = "SELECT * FROM user_info WHERE username='$username' AND password ='$password'";
$result = $conn->query($sql);

if ($result->num_rows > 0) {

// 登录成功
echo "登录成功";

} else {

// 登录失败
echo "用户名或密码错误";

}

/ / Fermez la connexion
$conn->close();
?>

Grâce au code ci-dessus, le nom d'utilisateur et le mot de passe saisis par l'utilisateur seront comparés aux données stockées dans la base de données s'ils correspondent. , la connexion est réussie.

3. Améliorer la sécurité du système

Les fonctions de connexion et d'enregistrement sont des fonctions système très importantes, il est donc nécessaire de s'assurer que les informations des utilisateurs enregistrés et connectés ne sont pas consultées illégalement, volées, falsifiées, etc. assurer la sécurité du système.

Voici quelques moyens d'améliorer la sécurité du système :

  1. Cryptage du mot de passe

Le mot de passe est l'une des informations de sécurité les plus importantes pour les utilisateurs et doit être protégé par cryptage. Lors du stockage des mots de passe utilisateur, utilisez des algorithmes de cryptage tels que MD5 et SHA-1 et ne stockez pas les mots de passe en texte clair.

  1. Prévenir l'injection SQL

Les données saisies par l'utilisateur peuvent présenter des problèmes d'injection SQL, des guillemets doubles et des variables doivent être utilisés pour empêcher l'injection SQL.

Par exemple, le code suivant est vulnérable aux attaques par injection SQL :

$sql = "SELECT * FROM user_info WHERE username=$_POST['username']";

doit être réécrit comme :

$sql = " SELECT * FROM user_info WHERE username='".$conn->real_escape_string($_POST['username'])."'";

  1. Utiliser le code de vérification

L'utilisation du code de vérification peut empêcher efficacement les attaques de connexion malveillantes par des robots et améliorer la sécurité du système sexuel.

Conclusion

Cet article présente brièvement comment utiliser les bases de données PHP et MySQL pour implémenter les fonctions d'enregistrement et de connexion. Lors de la mise en œuvre de cette fonction, vous devez prêter attention aux problèmes de sécurité du système. Ce n'est qu'en assurant la sécurité du système que la sécurité des informations de l'utilisateur peut être assurée.

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