laravel forms validation rules with example
Αυτό το σεμινάριο εξηγεί τις φόρμες Laravel και τους κανόνες επικύρωσης φόρμας. Μάθετε για διάφορα στοιχεία φόρμας με παραδείγματα:
Στο Βάση δεδομένων Laravel φροντιστήριο του Εκμάθηση σειράς Laravel , μάθαμε για το χειρισμό βάσεων δεδομένων, τις μετεγκαταστάσεις, τη σπορά, τα ερωτήματα Raw SQL, τα Eloquent Models, τις εύγλωττες σχέσεις, το Artisan και το Tinker
Οι φόρμες αποτελούν βασικό χαρακτηριστικό κατά την ανάπτυξη μιας διαδικτυακής εφαρμογής. Είναι δύσκολο να σκεφτεί κανείς μια διαδικτυακή εφαρμογή χωρίς να έχει μια φόρμα. Η επικύρωση είναι ένας κρίσιμος παράγοντας κατά τη δημιουργία μιας φόρμας, και χωρίς την κατάλληλη επικύρωση, αυτά είναι άχρηστα.
Υπάρχουν διάφορες μέθοδοι για τη δημιουργία μιας φόρμας. Σε αυτό το σεμινάριο, έχουμε συζητήσει μια τέτοια μέθοδο. Αυτό το σεμινάριο ανανεώνει επίσης τις γνώσεις HTML που σχετίζονται με φόρμες.
Σε αυτό το σεμινάριο, έχουμε καλύψει Φορμά Laravel και Κανόνες επικύρωσης Laravel . Για όλα τα παραδείγματα, έχουμε χρησιμοποιήσει Έκδοση Laravel 7 .
Τι θα μάθετε:
Φόρμες Laravel
Προαπαιτούμενα
Για να προχωρήσετε, πρέπει να εξοικειωθείτε με τις ακόλουθες έννοιες:
# 1) Bootstrap
Χρησιμοποιήσαμε το Bootstrap ως το πλαίσιο CSS σε αυτό το σεμινάριο, υποθέτοντας ότι είστε εξοικειωμένοι με το πλαίσιο Bootstrap. Επισκεφτείτε το Σύνδεσμος για να μάθετε περισσότερα για το Bootstrap.
# 2) Εγκατάσταση Laravel και δημιουργία νέου έργου
Ανατρέξτε στο Tutorial Εισαγωγής Laravel για να καταλάβετε πώς να εγκαταστήσετε το Laravel και να δημιουργήσετε ένα νέο έργο.
# 3) Διαμόρφωση βάσης δεδομένων Laravel
Ανατρέξτε στο Εκμάθηση βάσης δεδομένων Laravel να έχει τη βασική ιδέα της έννοιας της βάσης δεδομένων Laravel.
Κουπόνι CSRF
Το CSRF σημαίνει Συγχώνευση αιτήσεων μεταξύ ιστότοπων . Το διακριτικό CSRF χρησιμοποιείται για την προστασία της εφαρμογής ιστού από επιθέσεις CSRF. Αυτά τα διακριτικά περιέχουν μια μοναδική τιμή που δημιουργείται από την πλευρά του διακομιστή της εφαρμογής, η οποία αποστέλλεται στην πλευρά του πελάτη της εφαρμογής. Επιπλέον, βοηθά στην επαλήθευση του κατά πόσον ένας πιστοποιημένος χρήστης στέλνει το αίτημα στην εφαρμογή.
Χρησιμοποιούμε αυτό το διακριτικό όταν ο προγραμματιστής δημιουργεί μια φόρμα όπως φαίνεται παρακάτω:
@csrf ... Στοιχεία φόρμας
Η ακόλουθη λίστα εμφανίζει ορισμένα από τα στοιχεία φόρμας που μπορούμε να χρησιμοποιήσουμε κατά τη δημιουργία μιας φόρμας.
- Επιγραφή
- Εισαγωγή κειμένου
- Προεπιλεγμένη είσοδος
- Εισαγωγή αριθμού
- Εισαγωγή ημερομηνίας
- Εισαγωγή αρχείου
- Κρυφή εισαγωγή
- Textarea
- Εισαγωγή email
- Εισαγωγή κωδικού πρόσβασης
- Αναπτυσσόμενη λίστα ή επιλέξτε πλαίσιο
- Είσοδος κουμπιού ραδιοφώνου
- Είσοδος κουμπιού ραδιοφώνου
- Η είσοδος του κουμπιού επιλογής είναι επιλεγμένη
- Πλαίσιο ελέγχου
- Εισαγωγή πλαισίου ελέγχου
- Είσοδος πλαισίου ελέγχου που είναι επιλεγμένη
- Κουμπί
- Κανονικό κουμπί
- Κουμπί υποβολής
- Κουμπί ανάπαυσης
Μπορούμε να χρησιμοποιήσουμε τα ακόλουθα αποσπάσματα κώδικα ως αναφορά κατά τη δημιουργία μιας φόρμας.
# 1) Ετικέτα
Περιγραφή: Μια ετικέτα αντιπροσωπεύει τη λεζάντα για το στοιχείο φόρμας.
Παράδειγμα: Δημιουργία ετικέτας για το όνομα .
First Name
# 2) Εισαγωγή κειμένου
Περιγραφή: Ένα πεδίο εισαγωγής κειμένου είναι ένα πεδίο εισαγωγής μίας γραμμής που επιτρέπει στο χρήστη να εισάγει κείμενο.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής κειμένου για το όνομα .
# 3) Προεπιλεγμένη είσοδος
Περιγραφή: Ένα προεπιλεγμένο πεδίο εισαγωγής επιτρέπει στον προγραμματιστή να εισάγει ένα πεδίο εισαγωγής με μια προεπιλεγμένη τιμή. Ο χρήστης μπορεί είτε να υποβάλει τη φόρμα με την προεπιλεγμένη τιμή είτε να αλλάξει την τιμή.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής για το όνομα με προεπιλεγμένη τιμή Τζον Ντο .
# 4) Εισαγωγή αριθμού
Περιγραφή: Ο αριθμός του πεδίου εισαγωγής επιτρέπει στο χρήστη να εισάγει μια αριθμητική τιμή.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής αριθμών για ηλικία .
# 5) Εισαγωγή ημερομηνίας
Περιγραφή: Ένα πεδίο εισαγωγής ημερομηνίας επιτρέπει στο χρήστη να επιλέξει μια ημερομηνία.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής ημερομηνίας για το ημερομηνία γέννησης .
# 6) Εισαγωγή αρχείου
Περιγραφή: Ένα πεδίο εισαγωγής αρχείου επιτρέπει στο χρήστη να ανεβάσει ένα αρχείο.
Παράδειγμα: Δημιουργία πεδίου επιλογής αρχείου για αντίγραφο πιστοποιητικού μεταφόρτωση.
# 7) Κρυφή είσοδος
Περιγραφή: Ένα κρυφό πεδίο εισαγωγής επιτρέπει στον προγραμματιστή να προσθέσει δεδομένα όταν ο χρήστης υποβάλλει τη φόρμα και ο χρήστης δεν μπορεί να δει ή να τροποποιήσει αυτά τα δεδομένα.
Παράδειγμα: Δημιουργία κρυφού πεδίου εισαγωγής για αναγνωριστικό μαθητή που έχει την τιμή 220 .
# 8) Textarea
Περιγραφή: Ένα textarea επιτρέπει στον χρήστη να εισάγει ένα μεγάλο κείμενο. Μπορεί να περιέχει πολλές γραμμές κειμένου.
Παράδειγμα: Δημιουργία κειμένου για διεύθυνση .
# 9) Εισαγωγή email
Περιγραφή: Ένα πεδίο εισαγωγής email επιτρέπει στο χρήστη να εισάγει μια διεύθυνση email. Επικυρώνει αυτόματα τη μορφή email.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής email.
# 10) Εισαγωγή κωδικού πρόσβασης
Περιγραφή: Ένα πεδίο εισαγωγής κωδικού πρόσβασης επιτρέπει στο χρήστη να εισάγει έναν κωδικό πρόσβασης. Οι χαρακτήρες εισαγωγής είναι κρυμμένοι.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής κωδικού πρόσβασης.
# 11) αναπτυσσόμενη λίστα ή επιλέξτε πλαίσιο
Περιγραφή: Μια αναπτυσσόμενη λίστα ή ένα πλαίσιο επιλογής επιτρέπει στο χρήστη να κάνει μια επιλογή από μια λίστα επιλογών.
Παράδειγμα: Δημιουργία μιας αναπτυσσόμενης λίστας για το τίτλος .
Title -- Mr. Ms. Dr.
# 12) Είσοδος κουμπιού ραδιοφώνου
a) Είσοδος κουμπιού ραδιοφώνου
Περιγραφή: Ένα κουμπί επιλογής επιτρέπει στο χρήστη να επιλέξει μία μόνο επιλογή από μια λίστα δύο ή περισσότερων αμοιβαίως αποκλειστικών επιλογών.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής κουμπιού επιλογής για γένος .
Gender Male Female
β) Έλεγχος εισόδου κουμπιού ραδιοφώνου
Περιγραφή: Αυτό επιτρέπει στον προγραμματιστή να εισάγει ένα πεδίο εισαγωγής κουμπιού επιλογής που είναι επιλεγμένο.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής κουμπιού επιλογής για γένος - αρσενικός η επιλογή είναι τετραγωνισμένος .
Gender Male Female
# 13) Είσοδος πλαισίου ελέγχου
α) Εισαγωγή πλαισίου ελέγχου
Περιγραφή: Ένα πλαίσιο ελέγχου επιτρέπει στο χρήστη να επιλέξει μία ή περισσότερες επιλογές από ένα συγκεκριμένο σύνολο επιλογών.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής πλαισίου ελέγχου για Χρώματα .
Colours Red Yellow Green
β) Είσοδος πλαισίου ελέγχου που είναι επιλεγμένη
Περιγραφή: Αυτό επιτρέπει στον προγραμματιστή να εισαγάγει ένα πεδίο εισαγωγής πλαισίου ελέγχου που είναι επιλεγμένο.
Παράδειγμα: Δημιουργία πεδίου εισαγωγής πλαισίου ελέγχου για Χρώματα - καθαρά είναι τετραγωνισμένος .
Colours Red Yellow Green
# 14) Κουμπιά
Τρεις τύποι κουμπιών μπορούν να χρησιμοποιηθούν κατά τη δημιουργία φορμών Laravel.
- Κανονικό κουμπί
- Κουμπί υποβολής
- Κουμπί επαναφοράς
α) Κανονικό κουμπί
Περιγραφή: Ένα κανονικό κουμπί είναι ένα κουμπί με δυνατότητα κλικ.
Παράδειγμα: Δημιουργία κανονικού κουμπιού.
β) Κουμπί υποβολής
Περιγραφή: Ένα κουμπί υποβολής επιτρέπει στο χρήστη να υποβάλλει δεδομένα φόρμας στην πλευρά του διακομιστή της εφαρμογής.
Παράδειγμα: Δημιουργία κουμπιού υποβολής.
γ) Επαναφορά κουμπιού
Περιγραφή: Ένα κουμπί επαναφοράς επιτρέπει στο χρήστη να ορίσει πεδία φόρμας στις αρχικές του τιμές.
Παράδειγμα: Δημιουργία κουμπιού επαναφοράς.
Κανόνες επικύρωσης Laravel
Η ακόλουθη λίστα εμφανίζει ορισμένους κανόνες επικύρωσης Laravel:
Σημείωση : Αναφέρομαι στο επίσημη τεκμηρίωση επικύρωσης Laravel για να δείτε την πλήρη λίστα επικύρωσης. Μερικοί από τους σημαντικούς κανόνες παρατίθενται παρακάτω.
# 1) Πριν ή ίσο (Ημερομηνία) - before_or_equal: ημερομηνία
Αυτός ο κανόνας επικύρωσης επιτρέπει μόνο τη χρήση μιας τιμής πριν ή ίσης με τη δεδομένη ημερομηνία.
#δύο) Μεταξύ - μεταξύ: ελάχιστο, μέγ
Αυτός ο κανόνας επικύρωσης επιτρέπει μόνο τη χρήση ενός μεγέθους μεταξύ του δεδομένου ελάχιστου και του μέγιστου.
# 3) Ημερομηνία - ημερομηνία
Αυτός ο κανόνας επικύρωσης επιτρέπει μόνο τη χρήση έγκυρης, μη σχετικής ημερομηνίας σύμφωνα με το strtotime Λειτουργία PHP.
# 4) Μορφή ημερομηνίας - date_format: μορφή
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να ταιριάζει με τη δεδομένη μορφή.
# 5) Διαφορετικός - διαφορετικό: πεδίο
ερωτήσεις συνέντευξης στο c ++
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να έχει διαφορετική τιμή από το πεδίο.
# 6) Διακριτό - διακριτή
Όταν εργάζεστε με πίνακες, σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο δεν πρέπει να έχει διπλές τιμές.
# 7) ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ - ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να μορφοποιηθεί ως διεύθυνση email.
# 8) Αρχείο εικόνας) - εικόνα
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να είναι μια εικόνα (jpeg, png, bmp, gif, svg ή webp).
# 9) Άκυρη - άκυρη
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να είναι μηδενικό.
# 10) Αριθμητικός - αριθμητικός
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να είναι αριθμητικό.
#έντεκα) Κοινή έκφραση - regex: μοτίβο
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να ταιριάζει με τη δεδομένη κανονική έκφραση.
# 12) Απαιτείται - απαιτείται
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να υπάρχει στα δεδομένα εισαγωγής και όχι κενό.
# 13) Μέγεθος - μέγεθος: τιμή
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να έχει μέγεθος που να ταιριάζει με τη δεδομένη τιμή.
# 14) Ωρες ωρες - ωρες ωρες
Αυτός ο κανόνας επικύρωσης εκτελεί ελέγχους επικύρωσης σε ένα πεδίο μόνο εάν αυτό το πεδίο υπάρχει στον πίνακα εισαγωγής.
#δεκαπέντε) Διεύθυνση URL - url
Σύμφωνα με αυτόν τον κανόνα επικύρωσης, το πεδίο πρέπει να είναι έγκυρο URL.
Παράδειγμα μορφών Laravel με επικύρωση Laravel
Σε αυτό το παράδειγμα, πρόκειται να δημιουργήσουμε μια φόρμα εγγραφής μαθητή με βασική επικύρωση Laravel.
Βήμα 1: Εγκαταστήστε ένα νέο έργο Laravel.
Βήμα 2: Συνδέστε το έργο σας στη βάση δεδομένων.
Βήμα 3: Δημιουργώ xxxx_xx_xx_xxxxxx_create_students_table μετανάστευση και το Μαθητης σχολειου μοντέλο.
Ανοιξε το xxxx_xx_xx_xxxxxx_create_students_table.php αρχειοθετήστε και τροποποιήστε τον υπάρχοντα κώδικα όπως φαίνεται παρακάτω:
increments('id'); $table->string('title',10); $table->string('name'); $table->date('bday'); $table->integer('age'); $table->string('gender',10); $table->string('phone'); $table->string('address'); $table->string('email'); $table->string('password'); $table->boolean('t&c'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('students'); } }
Ανοίξτε το αρχείο Student.php και τροποποιήστε τον υπάρχοντα κώδικα όπως φαίνεται παρακάτω:
Βήμα 4: Εκτελέστε την ακόλουθη εντολή στη γραμμή εντολών για να εκτελέσετε μετεγκαταστάσεις.
php artisan migrate
Βήμα 5: Προσθέστε τις ακόλουθες δύο διαδρομές στο διαδρομές / web.php αρχείο.
Route::get('student/create','StudentController@create')->name('student.create'); Route::post('student/create','StudentController@store')->name('student.store');
Βήμα 6: Δημιουργώ StudentController και τροποποιήστε τον υπάρχοντα κώδικα όπως φαίνεται παρακάτω:
all(); $request->validate(( 'title' => 'required', 'name' => 'required|max:255', 'bday' => 'required|date', 'age' => 'required|numeric', 'gender' => 'required', 'phone' => 'required|min:10', 'address' => 'required|max:255', 'email' => 'required|email|max:255', 'password' => 'required|min:6|max:255', 't&c' => 'required', )); $input('password') = bcrypt($input('password')); Student::create($input); return back()->with('success','Successfully registered a new student!'); } }
Βήμα 7: Δημιουργήστε το σχετικό αρχείο προβολής (δημιουργία.blade.php) και προσθέστε τον ακόλουθο κωδικό.
Laravel 7 Forms Tutorial @if (count($errors) > 0) @foreach ($errors->all() as $error) - {{ $error }}
@endforeach
@endif @if ($message = Session::get('success')) × {{ $message }} @endif Student Registration Form
@csrf Title -- Mr. Ms. Name Birth Date Age Gender Male Female Phone Address Email Password I agree to the terms and conditions.
Βήμα 8: Εκτελέστε το έργο στο πρόγραμμα περιήγησης. Θα παράγει έξοδο παρόμοια με το παρακάτω στιγμιότυπο οθόνης.
Είναι καιρός να παίξετε με αυτήν τη φόρμα. Εάν συμπληρώσετε τη φόρμα με μη έγκυρες τιμές, θα λάβετε σφάλματα επικύρωσης. Εάν συμπληρώσετε σωστά τη φόρμα και υποβάλετε, τότε θα λάβετε ένα μήνυμα επιτυχίας και οι τιμές θα αποθηκευτούν στη βάση δεδομένων.
συμπέρασμα
Οι φόρμες Laravel βοηθούν τους προγραμματιστές να συλλέγουν δεδομένα από πελάτες ή επισκέπτες ιστότοπων. Ο προγραμματιστής πρέπει να δημιουργήσει φόρμες με σωστή επικύρωση. Διαφορετικά, οι φόρμες μπορεί να μην είναι χρήσιμες ως έχουν. Σε αυτό το σεμινάριο έχουμε συζητήσει σημαντικούς κανόνες επικύρωσης φόρμας Laravel.
Ελπίζουμε να βρείτε αυτό το σεμινάριο χρήσιμο! Ελπίζω να σας ξαναδώ στο επόμενο σεμινάριο όπου θα συζητήσουμε τη μεταφόρτωση αρχείων, την αποστολή μηνυμάτων ηλεκτρονικού ταχυδρομείου, τις περιόδους σύνδεσης, τον έλεγχο ταυτότητας και την εξουσιοδότηση.
Καλή μάθηση!
<< PREV Tutorial | ΕΠΟΜΕΝΟ Φροντιστήριο >>
Συνιστώμενη ανάγνωση
- Εκμάθηση PHP Laravel για αρχάριους: Τι είναι το πλαίσιο Laravel
- Βάση δεδομένων Laravel, Migrations, Eloquent ORM και Tinker
- Συνεδρία Laravel, Μεταφόρτωση / Λήψη Αρχείων και Άδειες
- Εκμάθηση συλλογής Laravel και Laravel Forge
- Αυτοματοποίηση επικύρωσης απόκρισης με ισχυρισμούς στον ταχυδρόμο
- Τελευταίος οδηγός δοκιμής επικύρωσης
- Ακριβής διαφορά μεταξύ επαλήθευσης και επικύρωσης με παραδείγματα