Laravel -Formularvalidierung mit Controller

Laravel -Formularvalidierung mit Controller
Die Form ist ein integraler Bestandteil des Laravel -Projekts. Das Anmeldeformular, das Registrierungsformular und das Kontaktformular werden hauptsächlich für die Besucher jeder Webanwendung verwendet. Der Benutzer gibt die Daten mit dem Formular in die Anwendung ein. Es ist wichtig, die vom Benutzer eingereichten Daten zu überprüfen, und der gültige Benutzer sendet die Daten. Die Formulardaten können mithilfe der FormRequest -Klasse oder der Laravel Project Controller -Methode validiert werden. Die Validierung von Laravel -Form mit dem Controller wurde in diesem Tutorial durch Erstellen eines einfachen Kontaktformulars gezeigt.

Voraussetzungen:

Sie müssen die folgenden Aufgaben erledigen, bevor Sie die Schritte dieses Tutorials beginnen.

Erstellen Sie ein neues Laravel -Projekt mit dem Namen validationProject. Hier das Komponist wurde verwendet, um das Laravel -Projekt zu erstellen. Wenn der Komponist Es wird vorher nicht installiert, Sie müssen es installieren, bevor Sie den folgenden Befehl ausführen.

$ Composer create-project laravel/laravel validationProject

Gehen Sie zum Projektordner.

$ CD ValidationProject

Alle Beispiele für dieses Tutorial wurden in Laravel Version 9 getestet+. Überprüfen Sie die installierte Version von Laravel.

$ Php Artisan -Version

Das Bootstrap -Paket muss für die Implementierung des reaktionsschnellen Kontaktformulars installiert werden. Führen Sie die folgenden Befehle aus, um Bootstrap für das Projekt zu installieren.

$ Composer benötigt Laravel/UI - -dev
$ Php Artisan UI Bootstrap
$ npm install && npm run dev

Setup -Datenbank:

Sie müssen eine Datenbank in MySQL erstellen, um die Datenbank -Seeding -Aufgabe zu implementieren. Füllen Sie die folgenden Aufgaben aus, um eine Datenbank zu erstellen und die Datenbank für das Laravel -Projekt einzurichten.

Melden Sie sich beim MySQL -Server an und führen Sie den folgenden SQL -Befehl aus, um eine Datenbank mit dem Namen zu erstellen db_validation Aus der MySQL -Eingabeaufforderung.

MySQL> Datenbank erstellen db_validation;

Öffne das .env Datei des Laravel -Projekts und initialisieren Sie die Werte für die folgenden Informationen basierend auf der Datenbank.

DB_CONNECTION = MYSQL
Db_host = localhost
Db_port = 3306
Db_database = db_validation
DB_USERNAME = "Benutzername"
Db_password = "Passwort"

Erstellen Sie eine Modell- und Migrationsdatei für die Tabelle

Gehen Sie zum Ordner des Laravel -Projekts und führen Sie den folgenden Befehl aus, um die Modell- und Migrationsdatei für die Kontakttabelle zu erstellen.

$ Php Artisan Make: Modell ContactForm -m

Nach der Ausführung des obigen Befehls werden eine Modelldatei und eine Migrationsdatei erstellt. Die Migrationsdatei ist erforderlich, um das Hinzufügen der Felder der Felder zu ändern contact_forms Tabelle, und es wurde im nächsten Teil des Tutorials durchgeführt.

Ändern Sie die Migrationsdatei:

Öffnen Sie die neu erstellte Migrationsdatei. Ändern Sie die hoch() Funktion mit dem folgenden Inhalt. Gemäß dem Skript enthält die Tabelle contact_forms 7 Felder. Dies sind ID, Name, E -Mail, Betreff und Nachrichten, die in Feldern erstellt und aktualisiert wurden.

öffentliche Funktion ()

Schema :: Create ('contact_forms', Funktion (Blueprint $ Tabelle)
$ table-> id ();
$ table-> string ('name');
$ table-> String ('E-Mail');
$ table-> String ('Betreff');
$ table-> string ('meldung');
$ table-> timestemps ();
);

Erstellen Sie die Tabelle:

Führen Sie den folgenden Befehl aus, um die Migrationsdatei auszuführen und zu erstellen die contact_forms Tabelle in die Datenbank.

$ php Artisan migrieren

Erstellen Sie einen Controller zur Validierung des Kontaktformulars:

Führen Sie den folgenden Befehl aus, um einen Controller zu erstellen, um das Kontaktformular zu validieren. Nach der Ausführung des Befehls der ContactFormController.Die PHP -Datei wird im Ordner App/HTTP/Controller erstellt.

$ Php Artisan Make: Controller ContactFormController

Öffne das contactFormController.Php Datei und ersetzen Sie den Inhalt der Datei durch den folgenden Inhalt.

bestätigen([
'Name' => 'Erforderlich | max: 50',
'E -Mail' => 'Erforderlich | E -Mail | max: 255',
'Betreff' => 'Erforderlich | max: 100',
'Nachricht' => 'Erforderlich | max: 255',
]);
\ App \ models \ contactForm :: create ($ validatedData);
return response ()-> json ('Nachricht wurde gesendet.');

Route für das Kontaktformular hinzufügen:

Öffne das Netz.Php Datei aus der Routen Ordner und fügen Sie die folgende Zeile am Ende der Datei hinzu. Die erste Route wird verwendet, um das Kontaktformular anzuzeigen und zu überprüfen, ob die eingereichten Daten gültig sind oder nicht. Die zweite Route wird verwendet, um die Daten des Kontaktformulars in der Datenbanktabelle zu speichern,

Route :: get ('Kontakt', 'App \ http \ controller \ contactFormController@create')-> Name ('Formular.erstellen');
Route :: post ('Kontakt', 'App \ http \ controller \ contactFormController@Store')-> Name ('Formular.speichern');

Ändern Sie die Modelldatei:

Öffnen Sie die ContactForm.PHP -Datei aus dem Ordner App/Models und ersetzen Sie den Inhalt durch den folgenden Inhalt, um die obligatorischen Felder des contact_forms Tisch.

Namespace App \ Models;
Verwenden Sie Illuminate \ Datenbank \ eloquent \ fabrories \ hasFactory;
Verwenden Sie Illuminate \ Database \ eloquent \ Modell;
ClassContactAcTeMtendendendsModel

UseHasFactory;
geschützt $ filable = ['name', 'mail', 'Betreff', 'meldung'];

Erstellen Sie Ansichten für das Kontaktformular:

Ein ... kreieren Layout.Klinge.Php Datei in der Ressourcen/Ansichten Ordner mit dem folgenden Inhalt, mit dem die erforderlichen CSS- und JS -Dateien hinzugefügt werden können.







Formular Validierungs -Tutorial




@yield ('Inhalt')



Erstellen Sie eine andere Ansichtsdatei mit dem Namen erstellen.Klinge.Php mit dem folgenden Inhalt, um das reaktionsschnelle Kontaktformular anzuzeigen.

@extends ('Layout')
@Sektion ('Inhalt')



Kontakt Formular


@if ($ fehler-> irgendwelche ())


    @foreach ($ fehler-> alle () als $ error)
  • $ error

  • @endforach



@endif


@csrf



















@endsection

Testen Sie die Anwendung:

Gehen Sie zum Projektordner und führen Sie den folgenden Befehl vom Terminal aus, um den Laravel Development Server zu starten.

$ php Artisan servieren

Öffnen Sie die folgende URL aus dem Browser, um das Kontaktformular anzuzeigen.

http: // 127.0.0.1: 8000/Kontakt

Das folgende Kontaktformular wird angezeigt, wenn alle oben genannten Schritte ordnungsgemäß ausgeführt werden.

Fügen Sie Daten in die Felder ein und klicken Sie auf Einreichen Taste. Hier wurde eine ungültige E -Mail -Adresse eingefügt.

Die folgende Ausgabe wird zum Senden der ungültigen E -Mail -Adresse angezeigt.

Die folgende Ausgabe wird angezeigt, wenn das Kontaktformular alle gültigen Daten einreicht. Sie können den Inhalt des contact_forms Tabelle, um zu bestätigen, ob die Daten des Kontaktformulars gespeichert wurden oder nicht.

Abschluss:

Eine der einfachen Möglichkeiten zur Implementierung der Laravel -Formvalidierung wurde in diesem Tutorial unter Verwendung eines einfachen Kontaktformulars gezeigt. Ich hoffe.