dqx13503925528 2016-01-08 11:35
浏览 46
已采纳

Laravel 4 - 邮件发送(变量未定义)

Trying to send an confirmation Email using Laravel 4.2. But hitting an error in the view

Undefined variable: booking_data

I am trying to pass it the following data array :

["from"]=>
  string(7) "Gatwick"
  ["to"]=>
  string(8) "Aberdeen"
  ["leaving"]=>
  string(21) "Friday, 15 July, 2016"
  ["returning"]=>
  string(24) "Wednesday, 20 July, 2016"
  ["price"]=>
  string(2) "53"
  ["hotel"]=>
  string(9) "Four Star"
  ["date_start"]=>
  string(10) "2016-07-15"
  ["date_end"]=>
  string(10) "2016-07-20"
  ["insurance"]=>
  string(0) ""
  ["num_travellers"]=>
  string(1) "1"
  ["car_hire"]=>
  string(0) ""
  ["baggage"]=>
  string(0) ""
  ["car_hire_days"]=>
  string(0) ""
  ["flight_cost"]=>
  string(2) "53"
  ["new_cost"]=>
  string(6) "383.00"
  ["hotel_transport"]=>
  string(0) ""
  ["passengers"]=>
  array(1) {
    [0]=>
    array(5) {
      ["firstname"]=>
      string(6) "Stuart"
      ["surname"]=>
      string(8) "Blackett"
      ["address2"]=>
      string(17) "Line 1"
      ["town"]=>
      string(12) "Town"
      ["passportnumber"]=>
      string(2) "TS"
    }
  }
  ["user_email"]=>
  string(27) "xyz@mail.co.uk"
  ["user_phone"]=>
  string(2) "01"

My current Laravel Controller code is :

// Create View Confirming Payment....
$booking_data = Session::all();

// Send Confirmation To User & Site Admin...
$user_email = Session::get('user_email');

Mail::send('emails.confirmation', $booking_data, function($message) use ($booking_data)
{
    $message->from('xyz@mail.co.uk', 'In The Air Deals');

    $message->to(Session::get('user_email'))
        ->cc('xyz@mail.co.uk')
        ->subject('Booking Confirmation from In The Air Deals');
});

In the view I am using blade and doing the following :

@foreach ($booking_data['passengers'] as $passenger)
   <tr>
   <td>Name:</td>
   <td>
   {{ $passenger->firstname }}
   {{ $passenger->surname }}
   </td>
   </tr>
   <tr>
   <td>&nbsp;</td>
   <td>&nbsp;</td>
   </tr>
   <tr>
   <td>Address:</td>
   <td>
   {{ $passenger->address1 }}
   <br />
   {{ $passenger->address2 }}
   {{ $passenger->town }}
  </td>
 </tr
@endforeach

Is there something else I need to do, To get the booking data passed to the view?

Thanks

  • 写回答

1条回答 默认 最新

  • dougou1127 2016-01-08 11:43
    关注

    try this:

    @foreach ($passengers as $passenger)
       <tr>
       <td>Name:</td>
       <td>
       {{ $passenger->firstname }}
       {{ $passenger->surname }}
       </td>
       </tr>
       <tr>
       <td>&nbsp;</td>
       <td>&nbsp;</td>
       </tr>
       <tr>
       <td>Address:</td>
       <td>
       {{ $passenger->address1 }}
       <br />
       {{ $passenger->address2 }}
       {{ $passenger->town }}
      </td>
     </tr
    @endforeach
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题