programação

Como Criar Formulário de Contato no Laravel 5

Criar uma formulário de contato em Laravel 5 utilizando a funcionalidade Form Request é uma prática eficaz para lidar com a validação de dados de entrada. Laravel oferece uma maneira elegante de realizar essa tarefa, facilitando o processo de validação e reutilização de código.

Aqui está um guia passo a passo para criar um formulário de contato utilizando o recurso Form Request no Laravel 5:

1. Criar o Form Request

Primeiro, você precisa criar uma classe Form Request para lidar com a validação dos dados enviados pelo formulário. No terminal, execute o seguinte comando Artisan:

bash
php artisan make:request ContactFormRequest

Isso criará uma nova classe ContactFormRequest dentro do diretório app/Http/Requests.

2. Definir as Regras de Validação

Abra o arquivo ContactFormRequest.php recém-criado e defina as regras de validação para os campos do formulário no método rules(). Por exemplo:

php
public function rules() { return [ 'name' => 'required|string|max:255', 'email' => 'required|email|max:255', 'message' => 'required|string|max:1000', ]; }

3. Manipular a Requisição

Agora, você precisa manipular a requisição do formulário no controlador correspondente. Crie um método no controlador para processar o envio do formulário:

php
use App\Http\Requests\ContactFormRequest; public function submitContactForm(ContactFormRequest $request) { // Lógica para lidar com o envio do formulário }

4. Criar a Visualização do Formulário

Crie uma visualização para exibir o formulário de contato. Por exemplo, você pode criar um arquivo chamado contact.blade.php em resources/views e adicionar o seguinte código HTML:

html
<form action="{{ route('submitContactForm') }}" method="POST"> @csrf <div> <label for="name">Nome:label> <input type="text" name="name" id="name" value="{{ old('name') }}"> div> <div> <label for="email">Email:label> <input type="email" name="email" id="email" value="{{ old('email') }}"> div> <div> <label for="message">Mensagem:label> <textarea name="message" id="message">{{ old('message') }}textarea> div> <button type="submit">Enviarbutton> form>

5. Rota

Por fim, defina a rota para o método de envio do formulário no arquivo web.php:

php
Route::post('/submit-contact-form', 'ContactController@submitContactForm')->name('submitContactForm');

Agora, quando o formulário for enviado, o Laravel automaticamente validará os dados utilizando a classe ContactFormRequest que você criou. Se houver erros de validação, o usuário será redirecionado de volta para o formulário com os erros exibidos. Caso contrário, o método submitContactForm no controlador será executado para lidar com o envio do formulário.

“Mais Informações”

Claro, vou fornecer informações detalhadas sobre como criar uma formulário de contato em Laravel 5 usando a funcionalidade de Form Request.

Introdução ao Laravel:

Laravel é um framework PHP poderoso e popular, conhecido por sua elegância e expressividade no desenvolvimento de aplicações da web. Ele oferece uma ampla gama de recursos para simplificar o processo de desenvolvimento, incluindo rotas, controllers, views e form requests, que são particularmente úteis para lidar com validação de dados de formulários.

Form Request no Laravel:

Form Request é um recurso do Laravel que permite centralizar a lógica de validação de formulários em classes dedicadas. Isso ajuda a manter o código limpo e organizado, separando as regras de validação do restante da lógica do aplicativo.

Criando a Form Request:

  1. Criar o Form Request Class:

Primeiro, vamos criar uma classe Form Request para lidar com a validação do formulário de contato. No terminal, execute o seguinte comando Artisan:

bash
php artisan make:request ContactFormRequest

Isso criará um novo arquivo na pasta app/Http/Requests com o nome ContactFormRequest.php. Abra este arquivo e você verá um método rules() onde você pode definir as regras de validação do seu formulário.

  1. Definindo Regras de Validação:

Dentro do método rules(), você pode definir as regras de validação para os campos do seu formulário. Por exemplo, se você tem campos de nome, email e mensagem, suas regras de validação podem ser definidas da seguinte maneira:

php
public function rules() { return [ 'name' => 'required|string|max:255', 'email' => 'required|email|max:255', 'message' => 'required|string|max:1000', ]; }

Isso garante que os campos name, email e message sejam obrigatórios, tenham um formato válido e atendam aos limites de tamanho especificados.

  1. Usando a Form Request no Controller:

Agora que você definiu suas regras de validação, pode usá-las em seu controller para validar os dados do formulário. Por exemplo, em seu controller de contato (ContactController), você pode injetar a classe Form Request no método de envio de mensagem:

php
use App\Http\Requests\ContactFormRequest; public function sendMessage(ContactFormRequest $request) { // Os dados do formulário foram validados neste ponto // Você pode prosseguir com o processamento da mensagem }

Exibindo Erros de Validação:

Se os dados do formulário não passarem na validação, o Laravel automaticamente redirecionará de volta ao formulário e os erros estarão disponíveis para exibição. Você pode exibir esses erros na sua view usando a função @error do Blade.

Por exemplo, em sua view de formulário de contato (contact.blade.php), você pode exibir os erros da seguinte maneira:

html
@if ($errors->any()) <div class="alert alert-danger"> <ul> @foreach ($errors->all() as $error) <li>{{ $error }}li> @endforeach ul> div> @endif

Conclusão:

Neste guia, exploramos como criar um formulário de contato em Laravel 5 usando a funcionalidade de Form Request. Ao seguir este processo, você pode criar formulários robustos que garantam que os dados enviados pelos usuários atendam aos requisitos específicos antes de serem processados pelo aplicativo. Isso ajuda a melhorar a segurança e a usabilidade da sua aplicação.

Botão Voltar ao Topo