【发布时间】:2019-09-12 15:26:12
【问题描述】:
现在我正在使用jQuery 存储会话变量,例如:
$("form#sessie_datum").change(function() {
var str = $("form#sessie_datum").serialize();
$.ajax({
type: 'POST',
url: 'http://URL.com/datum.php',
data: $("form#sessie_datum").serialize(),
dataType: 'text',
success: function() {
alert('Variables has been stored in the session');
},
});
return false;
});
在我的datum.php 文件中,我按名称获取提交的值,
这是我的form:
<form id="sessie_datum">
<input type="text" class="aantal_alpincenter" name="personen_aantal" value="">
<input type="text" id="datepicker2" placeholder="Click to choose a date" name="wapbk_hidden_date" value="">
<div id="datepicker"></div>
</form>
datum.php 在下面
<?php
session_start();
$_SESSION["chosen_date"] = $_POST['wapbk_hidden_date'];
$_SESSION["personen"] = $_POST['personen_aantal'];
?>
在每个 php 文件中,我可以获取会话变量,例如:
session_start();
$date = htmlentities($_SESSION["chosen_date"]);
我不想使用session_start();,而是想使用cookies,这样我可以防止与我的caching插件发生冲突,并让变量在用户的计算机上存储1天。任何人都知道如何使用cookies 做到这一点?
【问题讨论】:
-
你是在会话而不是 cookie 中做的!
-
是的,我知道,但我想设置已提交变量的 cookie
-
为什么不使用瞬变?
-
什么是瞬态?使用
WP Rocket我可以排除cookies所以这是我想设置cookies的主要原因 -
codex.wordpress.org/Transients_API 我会使用瞬态而不是将数据存储在 cookie 中。
标签: php wordpress forms session session-cookies