
ThinkPHP6 ユーザーのログインと登録: ユーザー認(rèn)証機(jī)能の実裝
はじめに:
ユーザーのログインと登録は、ほとんどの Web アプリケーションに共通する要件の 1 つです。 ThinkPHP6では、內(nèi)蔵のユーザー認(rèn)証機(jī)能を利用することで、ユーザーのログインや登録操作を簡(jiǎn)単に実現(xiàn)できます。この記事では、ThinkPHP6 にユーザー認(rèn)証機(jī)能を?qū)g裝する方法とコード例を紹介します。
1. ユーザー認(rèn)証機(jī)能の概要
ユーザー認(rèn)証とは、ユーザーの身元を確認(rèn)するプロセスを指します。 Web アプリケーションでは、通常、ユーザー認(rèn)証にはユーザー ログインとユーザー登録が含まれます。
ユーザー登録: ユーザーが新しいアカウントを作成し、その関連情報(bào) (ユーザー名、パスワード、電子メールなど) をデータベースに保存できるようにします。
ユーザー ログイン: ユーザーは、登録されたアカウントを使用してシステムにログインし、アカウントの正當(dāng)性を確認(rèn)し、システムに必要なリソースにアクセスします。
2. ユーザー モデルの作成
まず、ユーザー関連のデータを操作するためのユーザー モデルを作成する必要があります。
コマンド ラインで次のコマンドを使用してユーザー モデルを生成します:
php think make:model User
生成されたユーザー モデル ファイルは、appmodel ディレクトリの User.php にあります。 。
User モデルでは、ユーザー名、パスワードなどのユーザー関連のフィールドと操作、およびユーザー登録とユーザー ログイン方法を定義する必要があります。
コード例:
namespace appmodel;
use thinkModel;
class ユーザーが Model を拡張
{
// 定義用戶字段
protected $schema = [
'id' => 'int',
'username' => 'string',
'password' => 'string',
'email' => 'string',
// 其他字段...
];
// 用戶注冊(cè)
public static function register($data)
{
// 驗(yàn)證數(shù)據(jù)合法性
// 保存用戶數(shù)據(jù)到數(shù)據(jù)庫
// 其他操作...
}
// 用戶登錄
public static function login($username, $password)
{
// 驗(yàn)證用戶名和密碼
// 登錄操作...
}
}
3. ユーザー コントローラーの作成
次に、ユーザー登録とログイン要求を処理するユーザー コントローラーを作成する必要があります。
コマンド ラインで次のコマンドを使用してユーザー コントローラーを生成します:
php think make:controller User
生成されたユーザー コントローラー ファイルは、appcontroller ディレクトリの User.php にあります。 。
ユーザー コントローラーでは、ユーザー登録メソッドとユーザー ログイン メソッドを定義し、ユーザー モデル內(nèi)の対応するメソッドを呼び出して処理する必要があります。
コード例:
namespace appcontroller;
use appmodelUser;
use thinkRequest;
use thinkController;
class User extends Controller
{
// 用戶注冊(cè)頁面
public function register()
{
return view();
}
// 用戶注冊(cè)
public function doRegister(Request $request)
{
// 獲取用戶提交的注冊(cè)信息
$data = $request->post();
// 調(diào)用用戶模型中的注冊(cè)方法
User::register($data);
}
// 用戶登錄頁面
public function login()
{
return view();
}
// 用戶登錄
public function doLogin(Request $request)
{
// 獲取用戶提交的登錄信息
$data = $request->post();
// 調(diào)用用戶模型中的登錄方法
User::login($data['username'], $data['password']);
}
}
4. ユーザー ビュー インターフェイスの作成
最後に、ユーザー インターフェイスの表示に使用される、ユーザー登録とログイン用のビュー インターフェイスを作成する必要があります。ユーザーが入力したデータを受け取ります。
app iew ディレクトリ內(nèi)にユーザー ディレクトリを作成し、そのユーザー ディレクトリ內(nèi)に 2 つのファイル register.html と login.html を作成します。
コード例 (register.html):
<meta charset="UTF-8">
<title>用戶注冊(cè)</title>
head>
<form action="/user/doRegister" method="post">
<input type="text" name="username" placeholder="請(qǐng)輸入用戶名"><br>
<input type="password" name="password" placeholder="請(qǐng)輸入密碼"><br>
<input type="email" name="email" placeholder="請(qǐng)輸入郵箱"><br>
<input type="submit" value="注冊(cè)">
</form>
コード例 (login.html):
< ;!DOCTYPE html>
<meta charset="UTF-8">
<title>用戶登錄</title>
<form action="/user/doLogin" method="post">
<input type="text" name="username" placeholder="請(qǐng)輸入用戶名"><br>
<input type="password" name="password" placeholder="請(qǐng)輸入密碼"><br>
<input type="submit" value="登錄">
</form>
以上がThinkPHP6のユーザーログインと登録:ユーザー認(rèn)証機(jī)能の実現(xiàn)の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國(guó)語 Web サイトの他の関連記事を參照してください。