Попытка перенаправить на предыдущую страницу с сообщением, когда у пользователя недостаточно средств на балансе. Контроллер:
if ($balance[0] > $kitap_baha[0]) {
$userkitap = new UlanyjyKitap();
$userkitap->user_id = Auth::id();
$userkitap->yarysh_id = $id;
$userkitap->save();
$galan = $balance[0] - $kitap_baha[0];
$user = User::find(Auth::id());
$user->balance = $galan;
$user->save();
return response()->download($downloads[0]);
} else {
return redirect()->back()->with('status', 'Balansyňyz ýeterlik däl');
}
Вид:
@if (session('status'))
<div style = "margin-top: 20px;">
<div class = "alert alert-danger alert-dismissible fade show" role = "alert">
<strong>Bagyşlaň!</strong> {{ session('status') }}
<button type = "button" class = "close" data-dismiss = "alert" aria-label = "Close">
<span aria-hidden = "true">×</span>
</button>
</div>
</div>
@endif
Результат dd($balance, $kitap_baha);:
Collection {#311 ▼
#items: array:1 [▼
0 => 7.0
]
}
Collection {#303 ▼
#items: array:1 [▼
0 => 10.0
]
}
$balance - баланс пользователя
$kitap_baha - цена книги
Он возвращается правильно, но я думаю, что сеанса нет.
Я что-то здесь делаю не так?
это не помогло return back()->with('status', 'Balansyňyz ýeterlik däl');
Хорошо; не был уверен, что цепочка этих методов нарушит логику, похоже, нет. Ваше сравнение правильное? Сделайте dd($balance, $kitap_baha); в своем контроллере и убедитесь, что ваше сравнение правильное / работает должным образом. Также обновите свой вопрос, указав результат dd($balance, $kitap_baha);, если можете.
Сделал, все правильно, $ balance и $ kitap_baha верны
ОК ... Можешь выложить результат dd($balance, $kitap_baha); или нет? Я не смогу помочь, если вы этого не сделаете (не вижу ничего плохого в других частях вопроса)
Collection {#311 ▼ #items: array:1 [▼ 0 => 7.0 ] }Collection {#303 ▼ #items: array:1 [▼ 0 => 10.0 ] }Вздох ... Не публикуйте их как комментарии; отредактируйте это в своем вопросе, пожалуйста ... Но, помимо этого, похоже, что он должен попадать в оператор else, поэтому значения сеанса должны быть установлены. Есть ошибки в storage/logs?
$kitap_baha - цена книги, $balance - баланс пользователя
Отредактируйте эти 3 комментария в своем вопросе как пояснение; они будут похоронены в комментариях. (На самом деле они уже есть)






Используйте
return redirect(...)->with(...)илиreturn back()->with(...); может быть проблема с их цепочкой.