Laravel 4联系人表单错误:未定义的变量:电子邮件


Laravel 4 Contact Form Error: Undefined variable: email

提前感谢您的回答。我不认为我做得不好的是制作一个联系表格,变量在视图/电子邮件/Contact.blad.php 中

我的表单

{{ Form::open(array('action' => 'PagesController@contact','method' => 'POST', 'role' =>'form', 'class' =>'form-horizontal' )) }}
<div class="form-group">
    {{ Form::label('name', 'Nombre:', ['class' => '']) }}                       
    {{ Form::text('name', '', ['class' => 'form-control', 'maxlength' => 20]) }}
</div>
<div class="form-group">
    {{ Form::label('email', 'Email:', ['class' => '']) }}                   
    {{ Form::email('email', '', ['class' => 'form-control']) }}
</div>
<div class="form-group">
    {{ Form::label('subject', 'Asunto:', ['class' => '']) }}                    
    {{ Form::text('subject', '', ['class' => 'form-control']) }}
</div>
    <div class="form-group">    
    {{ Form::label('country', 'Pais:', ['class' => '']) }}                  
    {{ Form::text('country', '', ['class' => 'form-control']) }}
</div>
<div class="form-group">
    {{ Form::label('textarea', 'Message:', ['class' => '']) }}                          
    {{ Form::textarea('msg', '',  ['class' => 'form-control', 'placeholder' =>'Your Message', 'required'=>'true'])  }}
</div>

<div class="form-group">
    {{ Form::submit('Send', array('class' => 'btn btn-primary btn-md')) }}
</div>
{{ Form::close() }}

在视图/电子邮件/contact.blade.php中

Name:   {{ $name }}
Email:  {{ $email }}
Country:    {{ $country }}
Subject:    {{ $subject }}
Message: {{ $msg }
{{ $detail }}

路线

Route::get('/contact', array('as' =>'contact', 'uses'=> 'PagesController@contact'));
Route::post('contact', 'PagesController@contact');

页面控制器

public function contact(){
    return View::make('contact');
}
public function postContact(){
    $user = array(
        'email'=>'africamia@gmail.com',
        'name'=>'Laravelovich'
    );
    // the data that will be passed into the mail view blade template
    $data = array(
        'detail'=>'Your awesome detail here',
        'name'  => $user['name']
    );
    // use Mail::send function to send email passing the data and using the $user variable in the closure
    Mail::send('emails.contact', $data, function($message) use ($user){
        $message->from('africamia@gmail.com', 'Admin');
        $message->to($user['email'], $user['name'])->subject('Welcome to My Laravel app!');
    });
    return View::make('gracias');
}

App/config/mail.php

return array(   
'driver' = 'smtp',  
'host' = 'smtp.gmail.com',  
'port' = 587,   
'from' = array('address' = 'africamia@gmail.com', 'name' = 'Admin'),  
'encryption' = 'tls',   
'username' = 'africamia@gmail.com',   
'password' = '123456',   
'sendmail' =  '/usr/sbin/sendmail -bs',   
'pretend' = false,  
 ); 

您需要将emailcountrysubjectmsg添加到PageController@postContact 中发送到emails.contact视图的数据中