亲爱的程序员,
我的项目遇到了问题,问题是我无法从MYSQL数据库中检索数据。
我一步一步地按照教程,确保我的代码是正确的。
继承我的web.php
Route::get('viewprofile','pagecontroller@view');
Route::get('/viewprofile','Controller@getProfile');
继承我的控制器getProfile功能 function getProfile()
{
$users['users'] = DB::table('users')->get();
if(count($users) > 0)
{
return view('viewprofile',$users);
}
else
{
return view('viewprofile');
}
}
继承我的viewprofile.blade.php
<table>
<tr>
<td>ID : </td>
<td>Username : </td>
<td>Email : </td>
</tr>
@foreach($users as $value)
<tr>
<td>{{ $users->id }}</td>
<td>{{ $users->name }}</td>
<td>{{ $users->email }}</td>
</tr>
@endforeach
</table>
我的数据库名为finalprojectSL,我的表名为users,其属性为:
id
name
email
password
retypepassword
任何帮助将不胜感激。
谢谢你, 最诚挚的问候
答案 0 :(得分:0)
尝试用此替换它:
$value->id
$value->name
$value->email
答案 1 :(得分:0)
在这里
if(count($users) > 0)
{
return view('viewprofile',$users);
}
取而代之的是
if (count($users) > 0)
{
return view('viewprofile', compact('users'));
}
将刀片更改为
@foreach($users['users'] as $value)
<tr>
<td>{{ $value->id }}</td>
<td>{{ $value->name }}</td>
<td>{{ $value->email }}</td>
</tr>
@endforeach
以前您尝试$users->id
。 $users
是collection
,而且ID不包含id
,因此Undefined property: Illuminate\Support\Collection::$id
答案 2 :(得分:0)
'模型'用户需要在$fillable
变量上显示ID;
在您的用户模型中:
protected $fillable = [
'id',
... others fields
];
答案 3 :(得分:0)
我认为您的代码需要更新如下:
public function getProfile()
{
$users = DB::table('users')->get();
if(count($users) > 0)
{
return view('viewprofile',compact('users'));
}
else
{
return view('viewprofile');
}
}
<table>
<tr>
<td>ID : </td>
<td>Username : </td>
<td>Email : </td>
</tr>
@if(isset($users))
@foreach($users as $value)
<tr>
<td>{{ $value->id }}</td>
<td>{{ $value->name }}</td>
<td>{{ $value->email }}</td>
</tr>
@endforeach
@endif
</table>
希望这对你有用!