ホームページ >php教程 >php手册 >PHP で書かれた MySQL データベースのユーザー認証システム コード

PHP で書かれた MySQL データベースのユーザー認証システム コード

WBOY
WBOYオリジナル
2016-06-13 12:32:08995ブラウズ

過去 2 日間、私は友人から、MySQL データベースを使用したユーザー認証システムの作成を手伝ってほしいと頼まれました。もちろん、それを避けることはできませんでした。そのため、一晩休んで、非常に簡単な PHP プログラムを作成する必要がありました。
ユーザー認証の原理は非常に簡単です。まず、ユーザーはページにユーザー名とパスワードを入力する必要があります。もちろん、未登録のユーザーは最初に登録する必要があります。次に、データベースを呼び出して、該当するユーザーが存在するかどうかを検索します。 「はい」の場合は確認し、そうでない場合は最初に登録するようユーザーに通知します。 PHP を使用するとこれらすべてを簡単に行うことができますが、後続のページでユーザーの身元を確認したい場合は、PHP3 を使用すると Cookie の使用方法しか理解できないことに注意してください。セッションを使用したい場合は、PHP4 の正式版がリリースされるのを待つだけです。
最初のステップはログイン ページを作成することなので、ここでは詳しく説明しません。とてもシンプルなものを作っただけなので、もっと美しくすることもできます。
第 2 ステップは、ログイン後の確認プログラムの設計から始まります。
login.php:

コードをコピー コードは次のとおりです:


mysql_connect("localhost"," user", "password")
/*データベースに接続し、ユーザー名とパスワードを自分で変更します*/
or die("データベースに接続できません。もう一度お試しください");
mysql_select_db( "userinfo")
または die ("データベースを選択できません。もう一度お試しください");
$today=date("Y-m-d H:i:s"); select id
from usertbl
where name=$name andpassword=$password
/*ユーザーの対応する情報をデータベースから検索してログインします*/
";
$result=mysql_query ($query);
$numrows= mysql_num_rows($result);
if($numrows==0){
/*同じ情報を持つユーザーが見つかるかどうかを確認します。登録されません*/
echo 不正なユーザー

echo 最初に登録してください

echo 再試行

}
else{
$row=mysql_fetch_array( $result);
$id=$row[0];
$query="
set lastlogin=$today
where id=$id"; result=mysql_query($query);
SetCookie("usercookie" , "Welcome, $name");
/*以降のページ認証を容易にするためにここで Cookie が使用されます。
しかし、このエリアの開発はまだ終わっていません。興味のある方は修正していただければ幸いです*/
echo ログイン成功

echo ぜひお入りください!

}
?>


3 番目のステップはもちろん登録ページの準備です。詳細は説明しません。
4 番目のステップは、登録後に本人確認を行い、それをデータベースに入力することです。
register.php:




コードをコピー

コードは次のとおりです:mysql_connect("localhost","user) "," パスワード") /*ユーザー名とパスワードを変更してください*/ or die("データベースに接続できません。もう一度お試しください");

mysql_select_db("userinfo")

or die ("データベースを選択できません。もう一度お試しください");
$query="select id from usertbl where name=$name";
/*同じ名前のユーザー情報を検索しますデータベースから*/
$result=mysql_query($query) ;
$numrows=mysql_num_rows($result);
if($numrows!=0) /* 見つかったら、もちろん誰かが同じ名前を最初に登録しています*/
{echo 誰かがすでにこの名前を登録しています。名前を再選択してください!;}
else
{$query="usertbl 値に挿入(0,$name,$)パスワード,)";
/*同じものが見つからない場合は、新しいユーザー情報を入力してください*/
mysql_query($query);
echo 登録成功;
echo ログインしてください!;}
?>

次のステップは Cookie の使用です。当初は各ページでユーザーを識別するために Cookie を使用する予定でしたが、他のページがまだ完了していないため、使用しません。どのような情報が必要か分かりません。したがって、ここでは PHP リファレンスを使用する、非常に簡単な使用法しかありません。


コードをコピー

コードは次のとおりです。 if(!$ usercookie ) {header("不正なユーザー");

}

?>
welcome.php:
require("cookie.php"); /
?>
echo $usercookie;
?>

もちろん、これを使用したい場合は、次のようにする必要があります。データベースを構築します。以下はデータベース テーブルの構造です。ライブラリの名前は userinfo です。


コードをコピー

コードは次のとおりです:


create table usertbl
(
ID int auto_increment primary key,
Name varchar(30),
Password varchar(20),
Lastlogin varchar(20)
); 

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。