1e886a45102a3e4898f23b52cd7ca771第354行中的ErrorException:未定义的变量:data(查看:C:\ xampp \ htdocs \ soulfy_repo \ framework \ resources \ views \ soulfy \ setting.blade.php)
我应该在哪里放置代码来定义数据?
setting.blade.php
<form action="{{ action('HomeController@getBackgroundTheme')}}" method="post">
<span class="setting-name">THEME</span>
<!-- <form method="POST" action="/posts"> -->
{{ csrf_field() }}
<span class="setting-value center">
<select name="menu">
<option value="Landscape">Landscape</option>
<option value="Lifestyle">Lifestyle</option>
<option value="Music">Music</option>
<option value="Office">Office</option>
<option value="Hobby">Hobby</option>
<option value="Politic">Politic</option>
<option value="Building">Building</option>
</select>
<!-- <div style="width: 150px; height: 30px;"><input type="image" src="http://localhost/framework_freshway/public_html/images/submit.png" value="SUBMIT" width="10"> -->
<a href="{{ Url('home/users') }}">List User</a>
@foreach($data as $d)
<tr>
<td>
<img width="200px" height="200px" src="{{url('/')}}/uploads/{{$d->background}}"/>
</td>
</tr>
@endforeach
<input type="submit" value="Submit">
</span>
<br><br><br>
</form>
HomeController.php
public function getBackgroundTheme()
{
$data = user::all();
return view('setting', ['data' => $data]);
}
答案 0 :(得分:0)
解决问题:
在执行循环之前检查是否定义了$data
@if (isset($data))
@foreach($data as $d)
<tr>
<td>
<img width="200px" height="200px" src="{{url('/')}}/uploads/{{$d->background}}"/>
</td>
</tr>
@endforeach
@endif
建议:在两个控制器操作中创建表单视图和发布表单。
答案 1 :(得分:0)
您应该传递一个空数组$ data,或者在使用之前检查是否设置了$ data。我个人更喜欢第二种方法。
@if(isset($data))
@foreach($data as $d)
<tr>
<td>
<img width="200px" height="200px" src="{{url('/')}}/uploads/{{$d->background}}"/>
</td>
</tr>
@endforeach
@endif
答案 2 :(得分:0)
public function getBackgroundTheme()
{
$data = user::all();
return view('setting')->with('data',$data);
}
您没有将变量传递给视图。您可以使用with
方法,也可以compose