Precisando montar um formulário de contato para sites e blogs? Você pode fazer isso utilizando o Laravel! Veja como:
Olá, pessoal! Hoje vou falar sobre como montar, de forma fácil, um formulário de contato em seu site usando o Laravel 4.1.
Em meu site, precisei colocar um formulário de contato para que as pessoas que acessam o site possam entrar em contato, seja para solicitar os serviços, ou para dar opinião, criticar… Enfim, ter uma forma de entrarem em contato comigo.
A princípio, tentei fazer o envio usando SMTP autenticado. Localmente, funcionou perfeitamente, mas quando enviei para meu servidor remoto, não funcionou (o Server bloqueou o envio por segurança. Ainda estou resolvendo isso). Mas no servidor remoto, consegui fazer o envio usando como tipo de envio a função mail() do PHP.
Para começar, criei duas rotas, uma para o método GET e outra para o método POST:
$message->to('contato@billjr.com.br') ->subject('Contato Bill Jr.');
15
});
16
returnRedirect::to('contato') ->with('message', 'Mensagem enviada com sucesso!');
17
}
18
returnRedirect::to('contato')
19
->withInput()
20
->withErrors($validation)
21
->with('message', 'Erro! Preencha todos os campos corretamente.');
22
}
Explicarei agora o que fiz no método postContato():
Criei a variável $regras para validar meu formulário;
Criei a variável $validation validando meu formulário com o Validator::make(), e usando o Input::all() para trazer todos campos postados pelo formulário;
Usando a condição if, verifico se a validação “passou” (if($validation->passes()));
Na variável $data, criei um array vazio, depois atribuí o valor de cada campo postado pelo formulário, para facilitar;
A seguir, uso o método de envio de email padrão do Laravel, com Mail::send(), e passando os parâmetos from, to e subject.
Em $message->from, informo email e nome do contato
Em $message->to, informo meu email de contato
Em $message->subject, o assunto do meu email de contato
Dentro da validação (if($validation->passes)), uso o return Redirect::to() para redirecionar para a página de contato, caso o e-mail tenha sido enviado com sucesso, com uma mensagem de “Sucesso!”.
Após fechar o bloco de código da validação, coloco uma validação com a mensagem de erro, caso o e-mail não tenha sido enviado com sucesso. A mensagem de sucesso exibo dentro do meu arquivo de layout padrão do site, desta forma:
1
@if(Session::has('message'))
2
{{ Session::get('message') }}
3
@endif
Bom, galera, é isso! Desta forma você pode ter facilmente um formulário de contato em seu site, ou adaptar o script para suas necessidades.
Caso queiram saber mais sobre como enviar e-mails com Laravel, acessem a documentação oficial em: e-mail com Laravel
Até o próximo artigo!
—–
Artigo de Oberaldo Büll Junior, publicado originalmente no iMasters.
Compartilhe:
Facebook
WhatsApp
Twitter
Linkedin
Telegram
Sobre o autor:
DialHost Internet
Há mais de 18 anos proporcionando um serviço de hospedagem de sites voltado 100% na Experiência e Sucesso do Cliente, prezando a qualidade, transparência e segurança.
Sobre o autor:
DialHost Internet
Há mais de 18 anos proporcionando um serviço de hospedagem de sites voltado 100% na Experiência e Sucesso do Cliente, prezando a qualidade, transparência e segurança.
A partir de 1º de julho de 2022, o Google G Suite, a edição legada e gratuita do serviço Google Workspace, será extinguida. Se você utiliza o serviço, precisará fazer o upgrade de conta para o Workspace para não perder o seu acesso e a sua conta
Antes de começar a escrever sobre os melhores Plugins no Google Chrome para aumentar sua produtividade, preciso começar essa publicação com uma definição muito importante