我正在创建我的第一个laravel项目,我想从'nutrition'sql表中获取信息,并计算每个用户的结果。我使用foreach输出我的users表ant my***.blade.php(主题文件)。我想做一些对每个用户都有价值的事情。
我在控制器内的功能:
public function nutrition() {
$id = Auth::User() -> id;
$users = DB::SELECT('SELECT * FROM clients WHERE tr_id = ?', ["$id"]);
return view('mitybos-valdymas', compact('users'));
}
我的路线: Route::get('/mityba', 'HomeController@nutrition');
内***.blade.php
@foreach ($users as $user)
{{ $user->name }}
@endforeach
我想在laravel(不是php)中执行的示例:
$sql = mysqli_query($conn, "SELECT * FROM clients WHERE tr_id = 1");
while ($row = mysqli_fetch_array($sql)) {
$u_id = $row['id'];
$name = $row['name'];
$sql2 = mysqli_query($conn, "SELECT * FROM nutrition WHERE user = '$u_id'");
$count = mysqli_num_rows($sql2);
echo "User name - " . $name. " / RESULT - " . $count;
}
3条答案
按热度按时间w1jd8yoj1#
试试这个,如果我完全理解你的问题:)
//路线
//homecontroller@nutrition
//在mitybos-valdymas.blade.php的内部,检查这个链接在blade中使用php
为了你在编码中的平静:)
iyfamqjs2#
理想情况下,你会创建一个
Nutrition
雄辩的模型和使用拉威尔的关系函数。但如果你不能/不想,那就自己创造吧。然后:
ps您可以使用
DB
facade的选择方法就像我上面所做的,而不是写出原始查询。如果你摆好table,用雄辩的语言
Nutrition
那么就这么简单了:请注意,如果您走的是雄辩的路线,那么有必要更改您的db模式以使用laravel命名约定,例如
User
s应该存储在一个名为users
还有你的nutrition
table会变成nutritions
与user_id
作为外键。lx0bsm1f3#
这是另一种方法,因此它将从0开始,直到用户数