2016-04-25 13 views
0

Laravelを初めて使用しました。モーダルから渡すときにhtmlentitiesエラーが発生する

エラー:

htmlentities() expects parameter 1 to be string, object given (View: /var/www/html/willow/resources/views/emails/valuation.blade.php) 

それが送信されているからモーダル

{!! Form::open(['action' => ['[email protected]']]) !!} 
       <div class="form-group"> 
        {!! Form::text('name', null, ['class' => 'form-control has-feedback', 'placeholder' => 'Name']) !!} 
       </div> 
       <div class="form-group"> 
        {!! Form::text('email', null, ['class' => 'form-control has-feedback', 'placeholder' => 'Email Address']) !!} 
       </div> 
       <div class="form-group"> 
        {!! Form::text('telephone', null, ['class' => 'form-control has-feedback', 'placeholder' => 'Telephone Number']) !!} 
       </div> 
       <div class="form-group"> 
        {!! Form::text('house_number', null, ['class' => 'form-control has-feedback', 'placeholder' => 'House name/number']) !!} 
       </div> 
       <div class="form-group"> 
        {!! Form::text('postcode', null, ['class' => 'form-control has-feedback', 'placeholder' => 'Postcode']) !!} 
       </div> 
       <div class="form-group"> 
        {!! Form::textarea('message', null, ['class' => 'form-control has-feedback', 'placeholder' => 'Message', 'rows' => '5']) !!} 
       </div> 
       <div class="form-group"> 
        <input type="submit" class="button black" value="Register"> 
       </div> 
      {!! Form::close() !!} 

と機能:

public function valuationRequest(ValuationRequest $request) 
{  
    // dd($request->all()); 
     Mail::send('emails.valuation', 
       ['name' => $request['name'], 
       'email' => $request['email'], 
       'telephone' => $request['telephone'], 
       'house_number' => $request['house_number'], 
       'postcode' => $request['postcode'], 
       'message' => $request['message'], 
       ], 
      function ($message) use ($request) { 
       $message->to('[email protected]', 'Paolo Resteghini')->subject('Valuation Request - Willow Lettings'); 
      }); 
     Session::flash('flash_message', 'Your request has been sent.'); 
    return redirect(URL::previous()); 
} 

DDの内容は完璧。すべての要求は期待どおりに実装されますが、残りの関数を実行しようとすると、上記のエラーで失敗します。

emails.valuation:

Hello, <br><br> 

You have received a new valuation request via the Willow Lettings website. Here they are: <br><br> 

<b>Name:</b> {{ $name }}<br> 
<b>Email:</b> {{ $email }}<br> 
<b>Phone:</b> {{ $telephone }}<br> 
<b>House number:</b> {{ $house_number }}<br><br> 
<b>Postcode:</b> {{ $postcode }}<br><br> 
{{ $message }} 
+0

は、しかし、あなたのコード内にhtmlentities()要求があるように見えませんか?メッセージが話しているビューを表示できますか? (view:/var/www/html/willow/resources/views/emails/valuation.blade.php) –

+0

htmlentities()は、そのモーダル? –

+0

'valuation.blade.php'には次のもの以外のものが含まれていますか? –

答えて

1

ほとんどの場合、これはあなたのmessage変数の問題です。あなたがdocsから見ることができるように:

Note: A $message variable is always passed to e-mail views, and allows the inline embedding of attachments. So, you should avoid passing a message variable in your view payload.

を言い換えれば、あなたはmsgのような何か他のものにmessageを変更する必要があります。

'msg' => $request['message'], 

その後、ブレード・ファイルでは、その変更を反映:

{{ $msg }} 
+1

Tomありがとう!これはすぐにそれを修正しました:-) –

+0

問題ありません! :-) –

関連する問題