Envio mails con formulario de contacto en laravel
Primero configurar el archivo mail.php dentro de config y definir si nos conectamos mediante smtp o apis y modificar el archivo .env segĂșn corresponda .Ademas debemos indicarle las credenciales correspondientes (host , port ,etc). En este caso el servidor utilizado para el envio de mails es mailtrap
Luego crear un Maileable con php artisan make:mail ContactoMailable
almacenada en code app/Mail
Crear el controlador de contacto con los metodos index y send con php artinsan make:controller ContactoControllers
Junto con el controlador creamos la vista index del formulario
Crear las rutas para el envio del mail , por ejemplo:
Route::get('contacto' , [ContactoController::class,'index'])->name('contacto.index');
Route::post('contacto' , [ContactoController::class,'send'])->name('contacto.send');
El controlador genera una instancia del Maileable con los argumentos del formulario que luego simplemente es enviado al correo indicado.
public function send(Request $request)
{
$correo = new ContactoMailable($request->all());
Mail::to('fernan.alemercado@gmail.com')->send($correo);
return "Mensaje Enviado";
}