Laravel est un framework PHP très populaire. Il présente les avantages de simplicité, de facilité d'utilisation, d'efficacité, de stabilité, de sécurité et de fiabilité, et est largement utilisé dans le développement d'applications Web. Dans le développement d'applications Web, les fonctions de connexion et d'enregistrement sont essentielles, alors comment utiliser Laravel pour implémenter les fonctions de connexion et d'enregistrement ? Cet article vous le présentera en détail.
1. Installez Laravel
Avant d'utiliser Laravel pour développer, vous devez d'abord installer Laravel via composer et utiliser la commande suivante :
composer create-project --prefer-dist laravel/laravel project_name
Une fois l'installation terminée, entrez le répertoire où se trouve le projet. et exécutez la commande suivante pour démarrer le service Laravel :
php artisan serve
2. Créez un modèle utilisateur et une table de données
Dans Laravel, vous pouvez facilement utiliser Eloquent ORM pour gérer les opérations de base de données. Nous devons créer un modèle utilisateur et une table de données.
Créer un modèle dans Laravel est très pratique, utilisez simplement la commande suivante sur la ligne de commande :
php artisan make:model User
Un fichier User.php sera généré dans le répertoire de l'application, qui est le modèle utilisateur. Laravel définira le nom de la table au pluriel du modèle par défaut, nous devons donc définir le nom de la table dans le modèle User comme suit :
class User extends Model { protected $table = 'users'; }
2 Créer une table de données d'utilisateurs
Créez une table d'utilisateurs dans la base de données et exécutez le. commande suivante pour créer la migration :
php artisan make:migration create_users_table --create=users
Un fichier de migration sera généré dans le répertoire database/migrations, comme indiqué ci-dessous :
class CreateUsersTable extends Migration { public function up() { Schema::create('users', function (Blueprint $table) { $table->increments('id'); $table->string('name'); $table->string('email')->unique(); $table->timestamp('email_verified_at')->nullable(); $table->string('password'); $table->rememberToken(); $table->timestamps(); }); } public function down() { Schema::dropIfExists('users'); } }
Exécutez la commande suivante pour générer la table de données :
php artisan migrate
3. package pour créer une authentification utilisateur
Laravel fournit un package laravel/ui qui peut être utilisé pour créer des systèmes d'authentification utilisateur. Utilisez d'abord la commande suivante pour installer le package laravel/ui :
composer require laravel/ui
Une fois l'installation terminée, exécutez la commande suivante pour créer un système d'authentification utilisateur :
php artisan ui vue --auth
La fonction de cette commande est de créer les vues de connexion et d'enregistrement par défaut du framework front-end Vue.js. Une fois l'exécution terminée, vous constaterez qu'il existe un dossier auth dans le répertoire resources/views, comprenant deux fichiers de vue auth/login.blade.php et auth/register.blade.php.
4. Définir le routage
Dans Laravel, le routage est un mécanisme qui lie les URL aux méthodes du contrôleur. Nous devons configurer le routage afin de pouvoir accéder aux pages de connexion et d'inscription.
Dans le fichier routes/web.php, ajoutez la définition de route suivante :
Route::get('/login', 'Auth\LoginController@showLoginForm')->name('login'); Route::post('/login', 'Auth\LoginController@login'); Route::get('/register', 'Auth\RegisterController@showRegistrationForm')->name('register'); Route::post('/register', 'Auth\RegisterController@register');
Ces routes appelleront respectivement les méthodes dans AuthLoginController et AuthRegisterController par défaut de Laravel.
5. Authentification personnalisée des utilisateurs
Dans les applications pratiques, nous devons souvent personnaliser l'authentification des utilisateurs pour répondre aux besoins de l'entreprise. Voici les étapes pour personnaliser l'authentification des utilisateurs :
Nous devons créer les contrôleurs LoginController et RegisterController dans le répertoire app/Http/Controllers/Auth, le code est le suivant :
class LoginController extends Controller { protected function validator(array $data) { return Validator::make($data, [ 'email' => 'required|email', 'password' => 'required|min:6' ]); } public function showLoginForm() { return view('auth.login'); } public function login(Request $request) { $validator = $this->validator($request->all()); if ($validator->fails()) { return redirect('/login') ->withErrors($validator) ->withInput(); } if (Auth::attempt(['email' => $request->email, 'password' => $request->password])) { return redirect('/'); } else { return redirect('/login') ->withErrors(['email' => '邮箱或密码错误']) ->withInput(); } } }
class RegisterController extends Controller { protected function validator(array $data) { return Validator::make($data, [ 'name' => 'required|max:255', 'email' => 'required|email|unique:users', 'password' => 'required|min:6|confirmed', ]); } public function showRegistrationForm() { return view('auth.register'); } public function register(Request $request) { $validator = $this->validator($request->all()); if ($validator->fails()) { return redirect('/register') ->withErrors($validator) ->withInput(); } $user = User::create([ 'name' => $request['name'], 'email' => $request['email'], 'password' => bcrypt($request['password']), ]); Auth::login($user); return redirect('/'); } }
Dans la coutume Dans le contrôleur, la méthode du validateur est utilisée pour vérifier la légitimité des données saisies par l'utilisateur et gérer les erreurs lors du processus de connexion ou d'enregistrement.
Modifier le routage d'origine avec le code suivant :
Route::get('/login', 'LoginController@showLoginForm')->name('login'); Route::post('/login', 'LoginController@login'); Route::get('/register', 'RegisterController@showRegistrationForm')->name('register'); Route::post('/register', 'RegisterController@register');
De cette façon, le code a été modifié et écrit en fonction de nos propres besoins, et les fonctions de connexion et d'enregistrement suffisent.
6. Résumé
Cet article détaille les étapes d'utilisation de Laravel pour implémenter la connexion et l'enregistrement des utilisateurs, y compris la création de modèles d'utilisateur et de tables de données, l'utilisation du package laravel/ui pour créer un système d'authentification utilisateur par défaut, la définition du routage et la personnalisation de l'utilisateur. authentification. Qu'il s'agisse de la version de base ou de la version personnalisée, l'utilisation de Laravel est très pratique et l'efficacité du développement a également été grandement améliorée. Si vous êtes un développeur PHP, autant essayer Laravel.
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!