php - make - Envío de correo electrónico con laravel, pero no reconoce la variable
send email laravel (3)
Como su variable de datos $ se define como:
$data = array(
''name''=>$contactName,
''email''=>$contactEmail,
''message''=>$contactMessage
);
No tendrá $ datos disponibles en su vista, pero puede usarlos directamente:
{{ $name }}
{{ $email }}
{{ $message }}
EDITAR:
Y tu controlador debería tener:
$contactName = Input::get(''name'');
$contactEmail = Input::get(''email'');
$contactMessage = Input::get(''message'');
$data = array(''name''=>$contactName, ''email''=>$contactEmail, ''message''=>$contactMessage);
Mail::send(''template.mail'', $data, function($message) use ($contactEmail, $contactName)
{
$message->from($contactEmail, $contactName);
$message->to(''[email protected]'', ''myName'')->subject(''Mail via aallouch.com'');
});
Debe pasar sus variables al cierre usando
use ($contactEmail, $contactName)
Como se muestra arriba.
Intento enviar un correo electrónico a través de Laravel, pero recibo este error:
Variable indefinida: contactoEmail
Aunque se definió arriba. ¿Qué está mal aquí?
Controlador
$contactName = Input::get(''name'');
$contactEmail = Input::get(''email'');
$contactMessage = Input::get(''message'');
$data = array(''name''=>$contactName, ''email''=>$contactEmail, ''message''=>$contactMessage);
Mail::send(''template.mail'', $data, function($message)
{
$message->from($contactEmail, $contactName);
$message->to(''[email protected]'', ''myName'')->subject(''Mail via aallouch.com'');
});
EDITAR:
template.mail
Name: {{$name}}
Email: {{$email}}
Message:{{$message}}
Si miras el código fuente , verás esta línea:
$data[''message''] = $message = $this->createMessage();
Entonces su campo de message
se sobrescribe con esa línea. Use otro nombre para el campo como text
o comment
.
Tengo este error y lo he resuelto. He reemplazado la palabra clave $message
con $comment
desde $ data.
Ejemplo a continuación:
$data = array(''name'' => ''vikas'', ''message'' => ''test message'');
ver
{{ $name }}
{{ $message }}
Está recibiendo un error
$data = array(''name'' => ''vikas'', ''comment'' => ''test message'');
{{ $name }}
{{ $comment }}
Ahora está funcionando bien.