laravel forms validation rules with example
Este tutorial explica os formulários do Laravel e as regras de validação de formulários. Aprenda sobre os diferentes elementos do formulário com exemplos:
No Banco de dados Laravel tutorial de Série de tutoriais do Laravel , aprendemos sobre manipulação de banco de dados, migrações, propagação, consultas SQL brutas, modelos do Eloquent, relacionamentos do Eloquent, artesão e conserto.
Os formulários são um recurso essencial ao desenvolver um aplicativo baseado na web. É difícil até pensar em um aplicativo da web sem ter um formulário. A validação é um fator crítico ao criar um formulário e, sem a validação adequada, eles são inúteis.
Existem vários métodos para construir um formulário. Neste tutorial, discutimos um desses métodos. Este tutorial também atualiza seu conhecimento de HTML relacionado a formulários.
Neste tutorial, cobrimos Laravel forms e Regras de validação do Laravel . Para todos os exemplos, usamos Laravel versão 7 .
O que você aprenderá:
Laravel Forms
Pré-requisitos
Para continuar, você precisa estar familiarizado com os seguintes conceitos:
# 1) Bootstrap
Usamos Bootstrap como estrutura CSS neste tutorial, presumindo que você esteja familiarizado com a estrutura Bootstrap. Visite este ligação para saber mais sobre o Bootstrap.
# 2) Instalação do Laravel e criação de um novo projeto
Por favor, consulte o Tutorial de introdução ao Laravel para entender como instalar o Laravel e criar um novo projeto.
# 3) Configuração do banco de dados Laravel
Por favor, consulte o Tutorial do banco de dados Laravel ter uma ideia básica do conceito de banco de dados do Laravel.
Token CSRF
CSRF significa Falsificação de solicitação entre sites . O token CSRF é usado para proteger o aplicativo da web de ataques CSRF. Esse token contém um valor exclusivo gerado pelo lado do servidor do aplicativo, que é enviado ao lado do cliente do aplicativo. Além disso, ajuda a verificar se um usuário autenticado está enviando a solicitação ao aplicativo.
Usamos esse token quando o desenvolvedor cria um formulário conforme mostrado abaixo:
@csrf ... Elementos de Formulário
A lista a seguir mostra alguns dos elementos de formulário que podemos usar ao criar um formulário.
- Rótulo
- Entrada de texto
- Entrada padrão
- Entrada de número
- Entrada de data
- Entrada de arquivo
- Entrada oculta
- Textarea
- Entrada de email
- Entrada de senha
- Lista suspensa ou caixa de seleção
- Entrada de botão de rádio
- Entrada de botão de rádio
- Entrada de botão de rádio que está marcada
- Caixa de seleção
- Entrada da caixa de seleção
- Entrada da caixa de seleção que está marcada
- Botão
- Botão normal
- Botão de envio
- Botão de descanso
Podemos usar os seguintes trechos de código como referência ao criar um formulário.
# 1) Etiqueta
Descrição: Um rótulo representa a legenda do elemento do formulário.
Exemplo: Gerando um rótulo para o primeiro nome .
First Name # 2) Entrada de Texto
Descrição: Um campo de entrada de texto é um campo de entrada de uma única linha que permite ao usuário inserir texto.
Exemplo: Gerando um campo de entrada de texto para o primeiro nome .
# 3) Entrada padrão
Descrição: Um campo de entrada padrão permite que o desenvolvedor insira um campo de entrada com um valor padrão. O usuário pode enviar o formulário com o valor padrão ou alterar o valor.
Exemplo: Gerando um campo de entrada para o primeiro nome com valor padrão John Doe .
# 4) Entrada de número
Descrição: O número do campo de entrada permite que o usuário insira um valor numérico.
Exemplo: Gerando um campo de entrada de número para idade .
# 5) Entrada de data
Descrição: Um campo de entrada de data permite que o usuário selecione uma data.
Exemplo: Gerando um campo de entrada de data para o data de nascimento .
# 6) Entrada de arquivo
Descrição: Um campo de entrada de arquivo permite que o usuário carregue um arquivo.
Exemplo: Gerando um campo de seleção de arquivo para cópia do certificado Envio.
# 7) Entrada Oculta
Descrição: Um campo de entrada oculto permite que o desenvolvedor adicione dados quando o usuário envia o formulário e o usuário não pode ver ou modificar esses dados.
Exemplo: Gerando um campo de entrada oculto para Identidade estudantil isso tem o valor 220 .
# 8) Área de Texto
Descrição: Uma textarea permite ao usuário inserir um texto longo. Ele pode conter várias linhas de texto.
Exemplo: Gerando uma área de texto para Morada .
# 9) Entrada de Email
Descrição: Um campo de entrada de e-mail permite que o usuário insira um endereço de e-mail. Ele valida automaticamente o formato do email.
Exemplo: Gerando um campo de entrada de e-mail.
# 10) Entrada de senha
Descrição: Um campo de entrada de senha permite que o usuário insira uma senha. Os caracteres inseridos são mascarados.
Exemplo: Gerando um campo de entrada de senha.
# 11) Lista suspensa ou caixa de seleção
Descrição: Uma lista suspensa ou caixa de seleção permite que o usuário selecione uma opção em uma lista de opções.
Exemplo: Gerando uma lista suspensa para o título .
Title -- Mr. Ms. Dr. # 12) Entrada de botão de rádio
a) Entrada do botão de rádio
Descrição: Um botão de rádio permite que o usuário selecione uma única opção de uma lista de duas ou mais opções mutuamente exclusivas.
Exemplo: Gerando um campo de entrada de botão de opção para gênero .
Gender Male Female b) Entrada de botão de rádio que está marcada
Descrição: Isso permite que o desenvolvedor insira um campo de entrada de botão de rádio que está marcado.
Exemplo: Gerando um campo de entrada de botão de opção para gênero - Masculino opção é verificado .
Gender Male Female # 13) Entrada da caixa de seleção
a) Entrada da caixa de seleção
Descrição: Uma caixa de seleção permite que o usuário selecione uma ou mais opções de um determinado conjunto de opções.
Exemplo: Gerando um campo de entrada de caixa de seleção para cores .
Colours Red Yellow Green b) Entrada da caixa de seleção que está marcada
Descrição: Isso permite que o desenvolvedor insira um campo de entrada de caixa de seleção que está marcado.
Exemplo: Gerando um campo de entrada de caixa de seleção para cores - internet é verificado .
Colours Red Yellow Green # 14) Botões
Três tipos de botões podem ser usados ao criar formulários do Laravel.
- Botão normal
- Botão de envio
- Botão de reset
a) Botão Normal
Descrição: Um botão normal é um botão clicável.
Exemplo: Gerando um botão normal.
b) Botão Enviar
Descrição: Um botão de envio permite que o usuário envie dados do formulário para o servidor do aplicativo.
Exemplo: Gerando um botão de envio.
c) Botão Reset
Descrição: Um botão de redefinição permite que o usuário defina os campos do formulário com seus valores originais.
Exemplo: Gerando um botão de reinicialização.
Regras de validação do Laravel
A lista a seguir mostra algumas regras de validação do Laravel:
Observação : Consulte o documentação oficial de validação do Laravel para ver a lista completa de validação. Algumas das regras importantes estão listadas abaixo.
# 1) Antes ou igual (data) - before_or_equal: date
Esta regra de validação só permite o uso de um valor anterior ou igual à data fornecida.
#dois) Entre - entre: min, max
Esta regra de validação só permite usar um tamanho entre o mínimo e o máximo fornecidos.
# 3) Encontro - encontro
Esta regra de validação só permite o uso de uma data válida e não relativa de acordo com o strtotime Função PHP.
# 4) Formato de data - date_format: format
Sob esta regra de validação, o campo deve corresponder ao formato fornecido.
# 5) Diferente - diferente: campo
algoritmo merge sort c ++
Sob esta regra de validação, o campo deve ter um valor diferente do campo.
# 6) Distinto - distinto
Ao trabalhar com matrizes, sob esta regra de validação, o campo não deve ter valores duplicados.
# 7) O email - o email
Sob esta regra de validação, o campo deve ser formatado como um endereço de e-mail.
# 8) Arquivo de imagem) - imagem
Sob esta regra de validação, o campo deve ser uma imagem (jpeg, png, bmp, gif, svg ou webp).
# 9) Anulável - anulável
Sob esta regra de validação, o campo deve ser nulo.
# 10) Numérico - numérico
Sob esta regra de validação, o campo deve ser numérico.
#onze) Expressão regular - regex: padrão
Sob esta regra de validação, o campo deve corresponder à expressão regular fornecida.
# 12) Requerido - requeridos
Sob esta regra de validação, o campo deve estar presente nos dados de entrada e não vazio.
# 13) Tamanho - tamanho: valor
Sob esta regra de validação, o campo deve ter um tamanho que corresponda ao valor fornecido.
# 14) As vezes - as vezes
Esta regra de validação executa verificações de validação em um campo apenas se esse campo estiver presente na matriz de entrada.
#quinze) URL - url
Sob esta regra de validação, o campo deve ser um URL válido.
Exemplo de formulários do Laravel com validação do Laravel
Neste exemplo, vamos criar um formulário de registro do aluno com validação básica do Laravel.
Passo 1: Instale um novo projeto do Laravel.
Passo 2: Conecte seu projeto ao banco de dados.
Etapa 3: Crio xxxx_xx_xx_xxxxxx_create_students_table migração e o Aluna modelo.
Abra o xxxx_xx_xx_xxxxxx_create_students_table.php arquivo e modifique o código existente conforme mostrado abaixo:
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'); } } Abra o arquivo Student.php e modifique o código existente conforme mostrado abaixo:
Passo 4: Execute o seguinte comando no prompt de comando para executar migrações.
php artisan migrate Etapa 5: Adicione as duas rotas a seguir ao rotas / web.php Arquivo.
Route::get('student/create','StudentController@create')->name('student.create'); Route::post('student/create','StudentController@store')->name('student.store'); Etapa 6: Crio StudentController e modifique o código existente conforme mostrado abaixo:
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!'); } } Etapa 7: Crie o arquivo de visualização relevante (create.blade.php) e adicione o seguinte código.
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. Etapa 8: Execute o projeto no navegador. Isso produzirá uma saída semelhante à imagem abaixo.

É hora de brincar com este formulário. Se você preencher o formulário com valores inválidos, obterá erros de validação. Se você preencher o formulário corretamente e enviar, receberá uma mensagem de sucesso e os valores serão salvos no banco de dados.
Conclusão
Os formulários do Laravel ajudam os desenvolvedores a coletar dados de clientes ou visitantes do site. O desenvolvedor deve criar formulários com validação adequada. Caso contrário, os formulários podem não ser úteis como são. Discutimos regras importantes de validação de formulários do Laravel neste tutorial.
Esperamos que você tenha achado este tutorial útil! Espero vê-lo novamente no próximo tutorial, onde discutiremos o upload de arquivos, envio de e-mails, sessões, autenticação e autorização.
Bom aprendizado!
<< PREV Tutorial | PRÓXIMO Tutorial >>
Leitura recomendada
- Tutorial de PHP Laravel para iniciantes: O que é Laravel Framework
- Banco de dados Laravel, migrações, Eloquent ORM e Tinker
- Sessão do Laravel, upload / download de arquivo e permissões
- Coleção Laravel e Tutorial do Laravel Forge
- Automatizando a validação de resposta com afirmações no carteiro
- Guia definitivo de teste de validação
- Diferença exata entre verificação e validação com exemplos
