0

私はLaravel 5.8を使用してオンラインストアプロジェクトに取り組んでおり、このプロジェクトでは、ユーザーがオンラインウォレットで価格を支払うかどうかを確認するためのチェックボックスを追加しました:

<input class="form-check-input" type="checkbox" name="pay_wallet" value="1" id="defaultCheck2">
<label class="form-check-label small mr-3" for="defaultCheck2">
    Pay with Wallet
</label>

次に、コントローラーで、ユーザーがチェックボックスをオンにした場合、セッションを送信するためにこれを追加しました。

try {
   if ($request->pay_wallet == '1') {
      Session::put('wallet', 'payment');
      return redirect()->back();
   }
}catch (\Exception $e) {
   dd($e);
}

次に、ビューで、これを試しました:

@php
if(session('wallet')){
    $us_id = Auth()->user()->usr_id;
    $user_wallet = App\UserWallet::where('user_id', $us_id)->get();
    foreach($user_wallet as $uw){
        echo "
        <ul>
            <li>$uw->id</li>
            <li>$uw->balance</li>
        </ul>
        ";
    }
}
@endphp

基本的にここで行う必要があるのは、セッションwalletが送信されたかどうかを確認し、ユーザー ID に基づいて使用可能なすべてのウォレットを表示することです。

しかし、問題は、ページを更新すると、まだウォレットが表示されることです。walletセッションがまだ生きていることを意味します!

どうすればこの問題を解決できますか?

4

1 に答える 1