Laravel ist ein sehr beliebtes PHP-Framework. Es zeichnet sich durch Einfachheit, Benutzerfreundlichkeit, Effizienz, Stabilität, Sicherheit und Zuverlässigkeit aus und wird häufig bei der Entwicklung von Webanwendungen verwendet. Bei der Entwicklung von Webanwendungen sind Anmelde- und Registrierungsfunktionen unerlässlich. Wie kann man also mit Laravel Anmelde- und Registrierungsfunktionen implementieren? In diesem Artikel wird es Ihnen ausführlich vorgestellt.
1. Installieren Sie Laravel
Bevor Sie Laravel zum Entwickeln verwenden, müssen Sie es zuerst über Composer installieren. Verwenden Sie dazu den folgenden Befehl:
composer create-project --prefer-dist laravel/laravel project_name
Geben Sie nach Abschluss der Installation das Verzeichnis ein, in dem sich das Projekt befindet, und führen Sie den folgenden Befehl aus, um den Laravel-Dienst zu starten:
php artisan serve
2. Erstellen Sie Benutzermodelle und Datentabellen #🎜🎜 #
In Laravel können Sie Eloquent ORM problemlos zur Abwicklung von Datenbankoperationen verwenden. Wir müssen ein Benutzermodell und eine Datentabelle erstellen.php artisan make:model User
Eine User.php-Datei wird im App-Verzeichnis generiert, das das Benutzermodell darstellt. Laravel setzt den Tabellennamen standardmäßig auf den Plural des Modells, daher müssen wir den Tabellennamen im Benutzermodell wie folgt festlegen:
class User extends Model { protected $table = 'users'; }
2 Benutzerdatentabelle erstellen
# 🎜🎜# Erstellen Sie die Benutzertabelle in der Datenbank und führen Sie den folgenden Befehl aus, um eine Migration zu erstellen:php artisan make:migration create_users_table --create=users
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'); } }
php artisan migrate
composer require laravel/ui
php artisan ui vue --auth
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');
LoginController- und RegisterController-Controller erstellen
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('/'); } }
Route ändern
Route::get('/login', 'LoginController@showLoginForm')->name('login'); Route::post('/login', 'LoginController@login'); Route::get('/register', 'RegisterController@showRegistrationForm')->name('register'); Route::post('/register', 'RegisterController@register');
Das obige ist der detaillierte Inhalt vonBeispiele zur Erläuterung, wie Laravel Anmelde- und Registrierungsfunktionen implementiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!