Heim > PHP-Framework > Laravel > Hauptteil

Beispiele zur Erläuterung, wie Laravel Anmelde- und Registrierungsfunktionen implementiert

PHPz
Freigeben: 2023-04-12 09:26:04
Original
2203 Leute haben es durchsucht

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
Nach dem Login kopieren

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
Nach dem Login kopieren

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.

    Benutzermodell erstellen
Das Erstellen eines Modells in Laravel ist sehr praktisch, verwenden Sie einfach den folgenden Befehl in der Befehlszeile: #🎜🎜 #
php artisan make:model User
Nach dem Login kopieren

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';
}
Nach dem Login kopieren

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
Nach dem Login kopieren
Eine Migrationsdatei wird im Verzeichnis „database/migrations“ generiert, wie unten gezeigt:

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');
    }
}
Nach dem Login kopieren
Führen Sie den folgenden Befehl aus. Sie können eine Datentabelle generieren:

php artisan migrate
Nach dem Login kopieren
3. Verwenden Sie das Laravel/UI-Paket, um die Benutzerauthentifizierung zu erstellen.

Laravel stellt ein Laravel/UI bereit Paket, mit dem ein Benutzerauthentifizierungssystem erstellt werden kann. Verwenden Sie zunächst den folgenden Befehl, um das Laravel/UI-Paket zu installieren:

composer require laravel/ui
Nach dem Login kopieren
Führen Sie nach Abschluss der Installation den folgenden Befehl aus, um ein Benutzerauthentifizierungssystem zu erstellen:

php artisan ui vue --auth
Nach dem Login kopieren
Die Funktion Dieser Befehl dient zum Erstellen der Standard-Anmelde- und Registrierungsansichten des js-Front-End-Frameworks. Nach Abschluss der Ausführung werden Sie feststellen, dass sich im Verzeichnis resources/views ein Auth-Ordner befindet, der die beiden Ansichtsdateien auth/login.blade.php und auth/register.blade.php enthält.

4. Routing festlegen

In Laravel ist Routing ein Mechanismus, der URLs an Controller-Methoden bindet. Wir müssen das Routing einrichten, damit wir auf die Anmelde- und Registrierungsseiten zugreifen können.

Fügen Sie in der Datei „routes/web.php“ die folgende Routendefinition hinzu:

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');
Nach dem Login kopieren
Diese Routen rufen die Methoden in Laravels Standard-AuthLoginController bzw. AuthRegisterController auf.

5. Angepasste Benutzerauthentifizierung

In praktischen Anwendungen müssen wir die Benutzerauthentifizierung häufig an die Geschäftsanforderungen anpassen. Im Folgenden sind die Schritte zum Anpassen der Benutzerauthentifizierung aufgeführt:

LoginController- und RegisterController-Controller erstellen

  1. Wir müssen die App/Http/Controllers/ erstellen Auth-Verzeichnis Erstellen Sie LoginController- und RegisterController-Controller. Der Code lautet wie folgt:
  2. 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();
            }
        }
    }
    Nach dem Login kopieren
    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('/');
        }
    }
    Nach dem Login kopieren
Im benutzerdefinierten Controller wird die Validierungsmethode verwendet, um die Legitimität von Benutzereingabedaten zu überprüfen und Fehler während der Anmeldung zu korrigieren Registrierungsprozess zur Bearbeitung.

Route ändern

  1. Ändern Sie die ursprüngliche Route in den folgenden Code:
  2. Route::get('/login', 'LoginController@showLoginForm')->name('login');
    Route::post('/login', 'LoginController@login');
    Route::get('/register', 'RegisterController@showRegistrationForm')->name('register');
    Route::post('/register', 'RegisterController@register');
    Nach dem Login kopieren
Auf diese Weise wird der Code wird wie folgt aussehen: Nachdem Sie es entsprechend Ihren eigenen Bedürfnissen geändert und geschrieben haben, melden Sie sich einfach an und registrieren Sie sich.

6. Zusammenfassung

In diesem Artikel werden die Schritte zum Implementieren der Benutzeranmeldung und -registrierung mit Laravel beschrieben, einschließlich der Erstellung von Benutzermodellen und Datentabellen sowie der Verwendung des Laravel/UI-Pakets zum Erstellen Standard-Benutzerauthentifizierungssystem, legen Sie das Routing fest und passen Sie die Benutzerauthentifizierung an. Unabhängig davon, ob es sich um die Basisversion oder die angepasste Version handelt, ist die Verwendung von Laravel sehr praktisch und auch die Entwicklungseffizienz wurde erheblich verbessert. Wenn Sie ein PHP-Entwickler sind, können Sie auch Laravel ausprobieren.

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!