php - laravel:如何使用打开模式设置会话
问题描述
我有 2 个用于 2 个模式的按钮。在下面的代码中:
<div>
<h3>1 month</h3>
<button type="button" class="pay-btn-1" data-toggle="modal" data-target="#modal1">Pay this featur</button>
</div>
<div>
<h3>2 month</h3>
<button type="button" class="pay-btn-2" data-toggle="modal" data-target="#modal2">Pay this featur</button>
</div>
我在页脚中插入 2 个模态:
<------ Modal 1------->
<div id="modal1" class="modal fade" role="dialog">
<div class="modal-dialog">
<?php
Session::flush('month');
Session::put('month', 1);
?>
<!-- Modal content-->
<div class="modal-content">
<form action="{{ route('panel.vip.payment') }}" method="post">
@csrf
<input type="hidden" value="1" name="plan">
<div>
<button type="submit">pay</button>
</div>
</form>
<button type="button" data-dismiss="modal">close</button>
</div>
</div>
</div>
<------ Modal 2------->
<div id="modal2" class="modal fade" role="dialog">
<div class="modal-dialog">
<?php
Session::flush('month');
Session::put('month', 2);
?>
<!-- Modal content-->
<div class="modal-content">
<form action="{{ route('panel.vip.payment') }}" method="post">
@csrf
<input type="hidden" value="2" name="plan">
<div>
<button type="submit">pay</button>
</div>
</form>
<button type="button" data-dismiss="modal">close</button>
</div>
</div>
</div>
我想在month
单击任何支付按钮时清除会话,然后在month
会话中设置该按钮的值(1 或 2)
我怎样才能做到这一点?
谢谢。
解决方案
按钮代码:
<div>
<h3>1 month</h3>
<button type="button" class="pay-btn-1" data-toggle="modal" data-target="#modal1">Pay this featur</button>
</div>
模式代码:
<------ Modal 1------->
<div id="modal1" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<form action="{{ route('payment') }}" method="post">
@csrf
<input type="hidden" value="1" name="plan">
<div>
<button type="submit">pay</button>
</div>
</form>
<button type="button" data-dismiss="modal">close</button>
</div>
</div>
</div>
单击按钮并在服务器端删除会话时将 ajax 发送到 PHP。
见下面的代码:
$('.pay-btn-1').click(function (e) {
e.preventDefault();
$.ajax({
type : 'post',
url : '/clear-session',
data : {_token: "{{ csrf_token() }}"},
success: function (data) {
//
}
});
});
现在在controller
onclearSession
方法中:
public function clearSession(Request $request)
{
$request->session()->forget('Vip');
return response()->json('ok', 200);
}
推荐阅读
- python - 如何同时与优势数据库服务器创建多个连接?
- laravel - 连接被拒绝 [tcp://redis:6380] - Laradock
- d3.js - d3js 甘特图,顶部有日期/时间刻度,当天蓝线
- python - https请求中的签名是如何加密的?
- arrays - Google App Script将单个元素分解为具有多个元素的一维数组
- java - SwingNode 在 macOS 上使用 JDK 11.0.6(和其他)显示空白窗口,但不使用 JDK 11.0.2。有解决方法吗?
- terraform - Terraform:有条件地安装 TF 模块
- android - 由于我的应用程序的后台通知导致三星设备上经常崩溃的消息
- android - 在 textview 中设置一些文本粗体,但不是全部
- php - POST 和 GET 在 Postmen 中有效,但 PUT 和 DELETE 无效