检查会话是否为空,取消设置,然后发送$_POST数据
Checking if a sessions is empty, unsetting it, and then sending $_POST data onclick
每当我单击一个按钮时,我有两组可能的信息要导出到另一个PHP页面。其中一个是会话。就像这样:
$_SESSION['excel_name']['Main_'] = "Main_".date("y_m_d_Hi");
$_SESSION['excel_array']['Main_']['Plan1'] = array();
post数据发送相同的信息,但不将其保存在会话中,以防止过多会话之间的冲突。所以我想尝试的是,检查是否有一个会话集。如果有,我将取消设置,并发送$_POST数据。如果没有,我会设置一个。我试过这样做:
session_start();
if(isset($_SESSION) && !empty($_SESSION)) {
unset($_SESSION['Main_']);
unset($_SESSION['Plan1']);
unset($_SESSION['excel_array']);
$_POST['excel_name']['Main_'] = "Main_".date("y_m_d_Hi");
$_POST['excel_array']['Main_']['Plan1'] = array();
} else {
$_SESSION['excel_name']['Main_'] = "Main_".date("y_m_d_Hi");
$_SESSION['excel_array']['Main_']['Plan1'] = array();
}
这个逻辑可能对你们中的一些人来说有点奇怪,但我几乎可以肯定它会起作用…但是。我想用一个按钮来完成。原因是,每当我单击该按钮时,我都会将信息导出到下一个PHP页面。我想在发送信息之前检查这些条件,而不是在加载页面的那一刻。
有可能吗?
有几种方法可以做到这一点,但在阅读我的答案之前,请注意javascript验证可以被编辑和恶意利用。
您可以对php页面执行AJAX请求,该页面将实现您的逻辑并返回代码200或401。然后,您可以在加载下一页之前执行操作。
相关文章:
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 下载使用POST数据动态生成的文件
- 如何从HTTP上下文对象中获取Post数据
- HTML表单将数据POST到MySQL
- 如何使用REST将AngularJS中的数据POST到Struts2
- 如何将数据POST到节点服务器并从中获取responseText
- 在 Angular2 中构建多部分/表单数据 POST 请求并验证输入类型文件
- 如何使用AJAX将数据POST到php文件
- 使用GET将数据POST到restfull api
- 为什么onreadystatechange在尝试将数据POST到php脚本时失败
- 如何从Angular将数据POST到WebAPI控制器's$http服务
- AJAX:将数据POST到不同的url
- AngularJS:将数据POST到外部REST API
- PHP使用AJAX将数据POST到另一个页面
- JQuery自动完成-多个数据post不工作
- 如何从HTML表单中获取数据post进度
- 如何使用Javascript (Ajax)将表单数据POST到外部PHP文件
- 博客代码数据:post.Url用作带有图像按钮的可点击链接
- fetch-多部分/表单数据POST中缺少边界
- 使用XMLHttpRequest将数据POST到CGI文件会导致BadHeader