现在,我使用app.use('/static', express.static(__dirname + '/components')); // server.js and components are in the same folder
// Then in your html you could simply, notice the absolute path
<script src="/static/foo.js" type="module"></script>
存储会话变量,例如:
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
插件发生冲突,并使变量在用户的计算机上存储1天,例如。有人知道如何使用caching
来做到这一点吗?
答案 0 :(得分:0)
您可以使用setcookie()功能保存cookie。
使用PHP仅将所有POST数据保存到cookie就是这样的
<?php
// Check if request method is post
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
foreach ($_POST as $key => $value) {
// If you wanna modify key text, you may do so like this:
switch ($key) {
case 'wapbk_hidden_date':
$cookie_key = 'chosen_date';
break;
case 'personen_aantal':
$cookie_key = 'personen';
break;
default:
$cookie_key = $key;
break;
}
// Saves cookie for 1 day on this domain
setcookie($cookie_key, $value, time()+3600*24, "/");
}
}
然后,当您要使用cookie时,请使用全局变量$_COOKIE来获取它:
$date = htmlentities($_COOKIE['chosen_date']);