ThinkPHP6 ユーザーのログインと登録: ユーザー認証機能の実装
はじめに:
ユーザーのログインと登録は、ほとんどの Web アプリケーションに共通する要件の 1 つです。 ThinkPHP6では、内蔵のユーザー認証機能を利用することで、ユーザーのログインや登録操作を簡単に実現できます。この記事では、ThinkPHP6 にユーザー認証機能を実装する方法とコード例を紹介します。
1. ユーザー認証機能の概要
ユーザー認証とは、ユーザーの身元を確認するプロセスを指します。 Web アプリケーションでは、通常、ユーザー認証にはユーザー ログインとユーザー登録が含まれます。
ユーザー登録: ユーザーが新しいアカウントを作成し、その関連情報 (ユーザー名、パスワード、電子メールなど) をデータベースに保存できるようにします。
ユーザー ログイン: ユーザーは、登録されたアカウントを使用してシステムにログインし、アカウントの正当性を確認し、システムに必要なリソースにアクセスします。
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', // 其他字段... ]; // 用户注册 public static function register($data) { // 验证数据合法性 // 保存用户数据到数据库 // 其他操作... } // 用户登录 public static function login($username, $password) { // 验证用户名和密码 // 登录操作... }
}
3. ユーザー コントローラーの作成
次に、ユーザー登録とログイン要求を処理するユーザー コントローラーを作成する必要があります。
コマンド ラインで次のコマンドを使用してユーザー コントローラーを生成します:
php think make:controller User
生成されたユーザー コントローラー ファイルは、appcontroller ディレクトリの User.php にあります。 。
ユーザー コントローラーでは、ユーザー登録メソッドとユーザー ログイン メソッドを定義し、ユーザー モデル内の対応するメソッドを呼び出して処理する必要があります。
コード例:
namespace appcontroller;
use appmodelUser;
use thinkRequest;
use thinkController;
class User extends Controller
{
// 用户注册页面 public function register() { return view(); } // 用户注册 public function doRegister(Request $request) { // 获取用户提交的注册信息 $data = $request->post(); // 调用用户模型中的注册方法 User::register($data); } // 用户登录页面 public function login() { return view(); } // 用户登录 public function doLogin(Request $request) { // 获取用户提交的登录信息 $data = $request->post(); // 调用用户模型中的登录方法 User::login($data['username'], $data['password']); }
}
4. ユーザー ビュー インターフェイスの作成
最後に、ユーザー インターフェイスの表示に使用される、ユーザー登録とログイン用のビュー インターフェイスを作成する必要があります。ユーザーが入力したデータを受け取ります。
app iew ディレクトリ内にユーザー ディレクトリを作成し、そのユーザー ディレクトリ内に 2 つのファイル register.html と login.html を作成します。
コード例 (register.html):
<meta charset="UTF-8"> <title>用户注册</title>
head>
<form action="/user/doRegister" method="post"> <input type="text" name="username" placeholder="请输入用户名"><br> <input type="password" name="password" placeholder="请输入密码"><br> <input type="email" name="email" placeholder="请输入邮箱"><br> <input type="submit" value="注册"> </form>
コード例 (login.html):
< ;!DOCTYPE html>
<meta charset="UTF-8"> <title>用户登录</title>
<form action="/user/doLogin" method="post"> <input type="text" name="username" placeholder="请输入用户名"><br> <input type="password" name="password" placeholder="请输入密码"><br> <input type="submit" value="登录"> </form>
5. ルーティング構成
最後に、ユーザー登録とログイン要求を対応するコントローラー メソッドにマップするようにルーティングを構成する必要があります。
configureoute ディレクトリの admin.php ファイルに次のコードを追加します:
Route::get('user/register', 'user/register');
Route: : post('user/doRegister', 'user/doRegister');
Route::get('user/login', 'user/login');
Route::post('user/doLogin' , 'user/doLogin');
6. テストと概要
これまでに、ThinkPHP6 でのユーザーのログインと登録の実装が完了しました。ユーザー登録・ログインページにアクセスし、該当する情報を入力して送信すると、システムはユーザーモデル内の対応するメソッドを呼び出して処理します。
今回の記事はここまでです この記事の説明を通じて、読者の皆様には ThinkPHP6 でのユーザー認証機能の実装方法が理解できたと思います。ユーザーのログインと登録はWebアプリケーションの基本的な機能であり、これらを習得することはWebアプリケーション開発において非常に重要です。この記事が読者の ThinkPHP6 の学習と開発に役立つことを願っています。
以上がThinkPHP6のユーザーログインと登録:ユーザー認証機能の実現の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、ThinkPHPの組み込みテストフレームワークについて説明し、ユニットや統合テストなどの主要な機能と、早期のバグ検出とコード品質の向上を通じてアプリケーションの信頼性を高める方法について強調しています。

記事では、リアルタイムの株式市場データフィードにThinkPhpを使用して、セットアップ、データの正確性、最適化、セキュリティ対策に焦点を当てて説明します。

この記事では、パフォーマンスの最適化、ステートレス設計、セキュリティに焦点を当てたサーバーレスアーキテクチャでThinkPhpを使用するための重要な考慮事項について説明します。コスト効率やスケーラビリティなどの利点を強調しますが、課題にも対処します

この記事では、セットアップ、ベストプラクティス、統合方法、および推奨ツールに焦点を当てたThinkPhpマイクロサービスにサービスの発見と負荷分散の実装について説明します。[159文字]。

ThinkPHPのIOCコンテナは、PHPアプリで効率的な依存関係管理のための怠zyなロード、コンテキストバインディング、メソッドインジェクションなどの高度な機能を提供します。

この記事では、ThinkPhpを使用してリアルタイムのコラボレーションツールを構築し、セットアップ、Websocket統合、セキュリティベストプラクティスに焦点を当てて説明します。

ThinkPhpは、軽量のデザイン、MVCアーキテクチャ、および拡張性を備えたSaaSアプリに利益をもたらします。スケーラビリティを向上させ、開発を速め、さまざまな機能を通じてセキュリティを改善します。

この記事では、ThinkPhpとRabbitMQを使用して分散タスクキューシステムの構築を概説し、インストール、構成、タスク管理、およびスケーラビリティに焦点を当てています。重要な問題には、Immedのような一般的な落とし穴を避けるための高可用性の確保が含まれます


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

WebStorm Mac版
便利なJavaScript開発ツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター
