Walidacja formularza Laravela za pomocą kontrolera

Walidacja formularza Laravela za pomocą kontrolera
Formularz jest integralną częścią projektu Laravel. Formularz logowania, formularz rejestracyjny i formularz kontaktowy to głównie formularze dla odwiedzających dowolną aplikację internetową. Użytkownik przesyła dane do aplikacji za pomocą formularza. Konieczne jest sprawdzenie danych przesłanych przez użytkownika jest autentyczne, a prawidłowy użytkownik przesyła dane. Dane formularza można zatwierdzić za pomocą klasy FormRequest lub metody kontrolera projektu Laravel. Walidacja formularza Laravel za pomocą kontrolera została pokazana w tym samouczku, tworząc prosty formularz kontaktowy.

Wymagania wstępne:

Musisz wykonać następujące zadania przed rozpoczęciem kroków tego samouczka.

Utwórz nowy projekt Laravel o nazwie ValidationProject. Tutaj kompozytor został użyty do stworzenia projektu Laravel. Jeśli kompozytor nie jest instalowany wcześniej, musisz go zainstalować przed wykonaniem następującego polecenia.

$ Composer Create-Project Laravel/Laravel ValidationProject

Przejdź do folderu projektu.

$ CD ValidationProject

Wszystkie przykłady tego samouczka zostały przetestowane w Laravel w wersji 9+. Sprawdź zainstalowaną wersję Laravela.

$ PHP Artisan -version

Pakiet Bootstrap jest wymagany do zainstalowania w celu wdrożenia responsywnego formularza kontaktowego. Uruchom następujące polecenia, aby zainstalować bootstrap dla projektu.

$ Composer wymaga laravel/ui - -dev
$ PHP Artisan Ui Bootstrap
$ npm install && npm uruchom dev

Konfiguracja bazy danych:

Musisz utworzyć bazę danych w MySQL, aby zaimplementować zadanie sadzenia bazy danych. Wykonaj następujące zadania, aby utworzyć bazę danych i skonfiguruj bazę danych dla projektu Laravel.

Zaloguj się do serwera MySQL i uruchom następujące polecenie SQL, aby utworzyć bazę danych o nazwie db_validation Z monitu MySQL.

MySQL> Utwórz bazę danych db_validation;

Otworzyć .Env plik projektu Laravel i zainicjuj wartości dla następujących informacji na podstawie bazy danych.

Db_connection = mysql
Db_host = localhost
Db_port = 3306
Db_database = db_validation
Db_username = „nazwa użytkownika”
Db_password = "hasło"

Utwórz model i plik migracyjny dla tabeli

Przejdź do folderu projektu Laravel i uruchom następujące polecenie, aby utworzyć model i plik migracyjny dla tabeli kontaktowej.

$ PHP Artisan Make: Model ContactForm -m

Po wykonaniu powyższego polecenia powstanie plik modelu i plik migracyjny. Plik migracji będzie zobowiązany do modyfikacji w celu dodania pól Contact_forms Tabela i zostało to zrobione w następnej części samouczka.

Zmodyfikuj plik migracji:

Otwórz nowo utworzony plik migracyjny Modyfikuj w górę() Funkcja z następującą zawartością. Zgodnie ze skryptem tabela Contact_forms będzie zawierać 7 pól. Są to identyfikator, nazwa, e -mail, temat i wiadomości utworzone i aktualizowane na polach.

Funkcja publiczna w górę ()

Schema :: „contact_forms”, funkcja (Blueprint $ tabela)
$ table-> id ();
$ table-> String („name”);
$ TABLE-> String („e-mail”);
$ TABLE-> STRING („Temat”);
$ tabela-> string („komunikat”);
$ TABLE-> Timestamps ();
);

Utwórz tabelę:

Uruchom następujące polecenie, aby wykonać plik migracji i utworzyć Contact_forms tabela do bazy danych.

Migruj migruj Artisan $

Utwórz kontroler do sprawdzania poprawności formularza kontaktowego:

Uruchom następujące polecenie, aby utworzyć kontroler, aby potwierdzić formularz kontaktowy. Po wykonaniu polecenia, ContactFormController.Plik PHP zostanie utworzony w folderze App/HTTP/Controllers.

$ PHP Artisan Make: Controller ContactFormController

Otworzyć ContactFormController.php złożyć i zastąpić zawartość pliku następującą zawartością.

uprawomocnić([
„Nazwa” => 'Wymagane | Max: 50' ',
„e -mail” => ”Wymagane | e -mail | Max: 255 '',
„Temat” => ”Wymagane | Max: 100”,
„Wiadomość” => 'Wymagana | Max: 255',
]);
\ App \ modele \ contactForm :: create ($ capelatDATA);
return Response ()-> JSON („Wiadomość została wysłana.');

Dodaj trasę formularza kontaktowego:

Otworzyć sieć.php plik z trasy folder i dodaj następujący wiersz na końcu pliku. Pierwsza trasa zostanie użyta do wyświetlania formularza kontaktowego i sprawdzenia, czy przesłane dane są prawidłowe lub nie. Druga trasa zostanie wykorzystana do przechowywania danych formularza kontaktowego w tabeli bazy danych,

Trasa :: „contact”, 'app \ http \ controllers \ contactFormController@create')-> nazwa („formularz formularz.tworzyć');
Trasa :: „Contact”, 'App \ http \ Controllers \ ContactFormController@Store')-> Nazwa (formularz formularz.sklep');

Zmodyfikuj plik modelu:

Otwórz formę kontaktu.plik php z folderu aplikacji/modeli i zastąp zawartość następującą treść, aby wymienić obowiązkowe pola Contact_forms tabela.

APP APP APP APP \;
Użyj Illuminate \ Database \ eloquent \ Factories \ HASFactory;
Użyj Illuminate \ Database \ eloquent \ Model;
classContactFormexTendsModel

Użycie Hasfactory;
Protected $ filebable = [„name”, „e -mail”, „temat”, „wiadomość”];

Utwórz widoki dla formularza kontaktowego:

Stwórz układ.ostrze.php plik wewnątrz Zasoby/widoki folder z następującą zawartością, która zostanie użyta do dodania niezbędnych plików CSS i JS.







Samouczek sprawdzania poprawności formularza




@Yield („Content”)



Utwórz inny plik widoku o nazwie tworzyć.ostrze.php z następującą zawartością, aby wyświetlić responsywny formularz kontaktowy.

@Extends („Layout”)
@Section („Content”)



Formularz kontaktowy


@if ($ errors-> albo ())


    @ForEach ($ errors-> all () jako $ error)
  • $ error

  • @endForeach



@endif


@csrf



















@ENDSECTION

Przetestuj aplikację:

Przejdź do folderu projektu i uruchom następujące polecenie z terminalu, aby uruchomić serwer Laravel Development Server.

$ PHP Artisan Serve

Otwórz następujący adres URL z przeglądarki, aby wyświetlić formularz kontaktowy.

http: // 127.0.0.1: 8000/kontakt

Poniższy formularz kontaktowy pojawi się, jeśli wszystkie powyższe kroki zostaną poprawnie wypełnione.

Włóż dane do pola i kliknij Składać przycisk. Tutaj wstawiono nieprawidłowy adres e -mail.

Pojawi się następujące dane wyjściowe w celu przesłania nieprawidłowego adresu e -mail.

Poniższe dane wyjściowe pojawi się, jeśli formularz kontaktowy prześle wszystkie prawidłowe dane. Możesz sprawdzić zawartość Contact_forms Tabela, aby potwierdzić, czy dane z formularza kontaktowego zostały zapisane, czy nie.

Wniosek:

Jeden z prostych sposobów wdrażania sprawdzania poprawności formularza Laravel został pokazany w tym samouczku za pomocą prostego formularza kontaktowego. Mam nadzieję, że użytkownicy Laravel będą w stanie łatwo wykonać zadanie sprawdzania poprawności formularza za pomocą kontrolera po przeczytaniu tego samouczka.