Maison base de données tutoriel mysql 编写MySQL数据库的用户认证系统实例

编写MySQL数据库的用户认证系统实例

Jun 07, 2016 pm 04:05 PM
mysql 实例 数据库 ami 用户 系统 编写 认证

这两天受朋友的托付,要我帮他写一个使用MySQL数据库的用户认证系统。我当然不好推脱的,只得耗费了一晚上的休息时间,写了个很简单的PHP程序。由于赶的很仓卒,可能会太简陋了些,而且可能还会有错误和漏洞。 用户认证的原理很简单:首先需要用户在页面上填

这两天受朋友的托付,要我帮他写一个使用MySQL数据库的用户认证系统。我当然不好推脱的,只得耗费了一晚上的休息时间,写了个很简单的PHP程序。由于赶的很仓卒,可能会太简陋了些,而且可能还会有错误和漏洞。

用户认证的原理很简单:首先需要用户在页面上填入用户名和密码,当然没注册的用户需要先注册。然后调用数据库搜索是否有相应的用户。如果有就确认,没有则提醒用户先注册。使用PHP来完成这一切很简单,但需要注意的是如果想在以后的页面中都能确认用户身份,使用PHP3我只能想出使用cookie的方法。要想使用session,就只能等待PHP4正式版的发布了!

第一步是做一个登录的页面,这儿就不多讲了。我只做了个极简单的,大家自己做得漂亮点。

第二步开始登录后的确认程序的设计。

<p>login.php:  <br>mysql_connect("localhost","user","password") <br>/*连接数据库,用户名和密码自行修改*/ <br>or die("无法连接数据库,请重试"); </p><p>mysql_select_db("userinfo") <br>or die("无法选择数据库,请重试"); <br>$today=date("Y-m-d H:i:s"); </p><p>$query=" <br>select id <br>from usertbl <br>where name=$name and password=$password <br>/*从数据库中搜索和登录用户相应的资料*/ <br>"; <br>$result=mysql_query($query); <br>$numrows=mysql_num_rows($result); </p><p>if($numrows==0){ <br>/*验证是否能找出相同资料的用户,不能则未注册*/ <br>echo 非法用户<br>; <br>echo 请注册先<br>; <br>echo 重试<br>; <br>} </p><p>else{ <br>$row=mysql_fetch_array($result); <br>$id=$row[0]; <br>$query=" <br>update usertbl <br>set lastlogin=$today <br>where id=$id"; <br>$result=mysql_query($query); <br>SetCookie("usercookie", "欢迎你,$name");<br> /*这里使用了cookie,以方便之后的页面认证。<br>但我未开发完这一块。希望有兴趣的朋友指正*/ <br>echo 登录成功<br>; <br>echo 请进!<br>; <br>} <br>?> </p>
Copier après la connexion

第三步当然是做好注册的页面,也不多讲了。

第四步是注册后的身份确认和输入数据库。

<p>register.php: <br>mysql_connect("localhost","user","password") /*请修改用户名和密码*/ <br>or die("无法连接数据库,请重试"); </p><p>mysql_select_db("userinfo") <br>or die("无法选择数据库,请重试"); <br>$query="select id from usertbl where name=$name\";<br> /*从数据库中搜索相同名字的用户资料*/ <br>$result=mysql_query($query); <br>$numrows=mysql_num_rows($result); <br>if($numrows!=0) /*找到了当然就是有人先注册了相同的名字*/ <br>{echo 已有人注册此名,请重新选择名字!;} <br>else <br>{$query="insert into usertbl values(0,$name,$password,\)";<br> /*找不到相同的就输入新的用户资料*/ <br>mysql_query($query); <br>echo 注册成功; <br>echo 请登录!;} <br>?> </p>
Copier après la connexion

下一步是cookie的使用,我原打算使用cookie来使每一页都能识别用户身份,但由于别的页面还没做好,不知道需要用到哪些资料。于是就只有一个很简单的使用,这里用到了PHP的引用:

<p>if(!$usercookie) <br>{header("非法用户"); <br>} <br>?> </p><p>welcome.php: </p><p>require("cookie.php"); /*调用cookie.php*/ <br>?> </p><p>echo $usercookie; <br>?> </p>
Copier après la connexion

到这儿便完成了一个很简单的用户认证系统,当然如果你要使用它还得建好数据库。下面是我的数据库表的结构,库的名字是userinfo。

<p>create table usertbl <br>( <br>ID int auto_increment primary key, <br>Name varchar(30), <br>Password varchar(20), <br>Lastlogin varchar(20) <br>);</p>
Copier après la connexion

(责任编辑 火凤凰 sunsj@51cto.com  QQ:34067741  TEL:(010)68476636-8007)


Déclaration de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Le système de conduite intelligent Qiankun ADS3.0 de Huawei sera lancé en août et sera lancé pour la première fois sur Xiangjie S9 Le système de conduite intelligent Qiankun ADS3.0 de Huawei sera lancé en août et sera lancé pour la première fois sur Xiangjie S9 Jul 30, 2024 pm 02:17 PM

Le 29 juillet, lors de la cérémonie de lancement de la 400 000e nouvelle voiture d'AITO Wenjie, Yu Chengdong, directeur général de Huawei, président de Terminal BG et président de la BU Smart Car Solutions, a assisté et prononcé un discours et a annoncé que les modèles de la série Wenjie seraient sera lancé cette année En août, la version Huawei Qiankun ADS 3.0 a été lancée et il est prévu de pousser successivement les mises à niveau d'août à septembre. Le Xiangjie S9, qui sortira le 6 août, lancera le système de conduite intelligent ADS3.0 de Huawei. Avec l'aide du lidar, la version Huawei Qiankun ADS3.0 améliorera considérablement ses capacités de conduite intelligente, disposera de capacités intégrées de bout en bout et adoptera une nouvelle architecture de bout en bout de GOD (identification générale des obstacles)/PDP (prédictive prise de décision et contrôle), fournissant la fonction NCA de conduite intelligente d'une place de stationnement à l'autre et mettant à niveau CAS3.0

Comment optimiser les performances des requêtes MySQL en PHP ? Comment optimiser les performances des requêtes MySQL en PHP ? Jun 03, 2024 pm 08:11 PM

Les performances des requêtes MySQL peuvent être optimisées en créant des index qui réduisent le temps de recherche d'une complexité linéaire à une complexité logarithmique. Utilisez PreparedStatements pour empêcher l’injection SQL et améliorer les performances des requêtes. Limitez les résultats des requêtes et réduisez la quantité de données traitées par le serveur. Optimisez les requêtes de jointure, notamment en utilisant des types de jointure appropriés, en créant des index et en envisageant l'utilisation de sous-requêtes. Analyser les requêtes pour identifier les goulots d'étranglement ; utiliser la mise en cache pour réduire la charge de la base de données ; optimiser le code PHP afin de minimiser les frais généraux.

Comment créer une table MySQL en utilisant PHP ? Comment créer une table MySQL en utilisant PHP ? Jun 04, 2024 pm 01:57 PM

La création d'une table MySQL à l'aide de PHP nécessite les étapes suivantes : Connectez-vous à la base de données. Créez la base de données si elle n'existe pas. Sélectionnez une base de données. Créer un tableau. Exécutez la requête. Fermez la connexion.

Comment corriger les erreurs mysql_native_password non chargé sur MySQL 8.4 Comment corriger les erreurs mysql_native_password non chargé sur MySQL 8.4 Dec 09, 2024 am 11:42 AM

L'un des changements majeurs introduits dans MySQL 8.4 (la dernière version LTS en 2024) est que le plugin « MySQL Native Password » n'est plus activé par défaut. De plus, MySQL 9.0 supprime complètement ce plugin. Ce changement affecte PHP et d'autres applications

iOS 18 ajoute une nouvelle fonction d'album 'Récupéré' pour récupérer les photos perdues ou endommagées iOS 18 ajoute une nouvelle fonction d'album 'Récupéré' pour récupérer les photos perdues ou endommagées Jul 18, 2024 am 05:48 AM

Les dernières versions d'Apple des systèmes iOS18, iPadOS18 et macOS Sequoia ont ajouté une fonctionnalité importante à l'application Photos, conçue pour aider les utilisateurs à récupérer facilement des photos et des vidéos perdues ou endommagées pour diverses raisons. La nouvelle fonctionnalité introduit un album appelé "Récupéré" dans la section Outils de l'application Photos qui apparaîtra automatiquement lorsqu'un utilisateur a des photos ou des vidéos sur son appareil qui ne font pas partie de sa photothèque. L'émergence de l'album « Récupéré » offre une solution aux photos et vidéos perdues en raison d'une corruption de la base de données, d'une application d'appareil photo qui n'enregistre pas correctement dans la photothèque ou d'une application tierce gérant la photothèque. Les utilisateurs n'ont besoin que de quelques étapes simples

Huawei lancera le système de détection Xuanji dans le domaine des appareils portables intelligents, capable d'évaluer l'état émotionnel de l'utilisateur en fonction de la fréquence cardiaque Huawei lancera le système de détection Xuanji dans le domaine des appareils portables intelligents, capable d'évaluer l'état émotionnel de l'utilisateur en fonction de la fréquence cardiaque Aug 29, 2024 pm 03:30 PM

Récemment, Huawei a annoncé qu'il lancerait en septembre un nouveau produit portable intelligent équipé du système de détection Xuanji, qui devrait être la dernière montre intelligente de Huawei. Ce nouveau produit intégrera des fonctions avancées de surveillance de la santé émotionnelle. Le système de perception Xuanji fournit aux utilisateurs une évaluation complète de la santé avec ses six caractéristiques : précision, exhaustivité, rapidité, flexibilité, ouverture et évolutivité. Le système utilise un module de super-détection et optimise la technologie d'architecture de chemin optique multicanal, ce qui améliore considérablement la précision de surveillance des indicateurs de base tels que la fréquence cardiaque, l'oxygène dans le sang et la fréquence respiratoire. En outre, le système de détection Xuanji a également élargi la recherche sur les états émotionnels sur la base des données de fréquence cardiaque. Il ne se limite pas aux indicateurs physiologiques, mais peut également évaluer l'état émotionnel et le niveau de stress de l'utilisateur. Il prend en charge la surveillance de plus de 60 sports. indicateurs de santé, couvrant les domaines cardiovasculaire, respiratoire, neurologique, endocrinien,

Tutoriel détaillé sur l'établissement d'une connexion à une base de données à l'aide de MySQLi en PHP Tutoriel détaillé sur l'établissement d'une connexion à une base de données à l'aide de MySQLi en PHP Jun 04, 2024 pm 01:42 PM

Comment utiliser MySQLi pour établir une connexion à une base de données en PHP : Inclure l'extension MySQLi (require_once) Créer une fonction de connexion (functionconnect_to_db) Appeler la fonction de connexion ($conn=connect_to_db()) Exécuter une requête ($result=$conn->query()) Fermer connexion ( $conn->close())

Comment gérer les erreurs de connexion à la base de données en PHP Comment gérer les erreurs de connexion à la base de données en PHP Jun 05, 2024 pm 02:16 PM

Pour gérer les erreurs de connexion à la base de données en PHP, vous pouvez utiliser les étapes suivantes : Utilisez mysqli_connect_errno() pour obtenir le code d'erreur. Utilisez mysqli_connect_error() pour obtenir le message d'erreur. En capturant et en enregistrant ces messages d'erreur, les problèmes de connexion à la base de données peuvent être facilement identifiés et résolus, garantissant ainsi le bon fonctionnement de votre application.

See all articles