我有此表格:
<form id="sessie_datum" method="post">
<input type="text" id="datepicker" placeholder="Klik hier om een datum te kiezen" name="wapbk_hidden_date" value="">
</form>
我想获取更改日期选择器中日期的值。我得到这个:
$("form#sessie_datum").change(function() {
$.ajax({
type: 'POST',
url: '/datum.php',
data: $("form#sessie_datum").serialize(),
dataType: 'text',
success: function() {
alert('Success');
}
});
});
它给了我Success alert
,但是现在我需要在datum.php
文件中做什么才能在session
变量中设置值?
datum.php文件是这样的:
<?php
session_start();
$_SESSION["datum"] = $_POST["wapbk_hidden_date"];
echo $_SESSION["datum"];
?>
这里是一个简短的示例,根据您的代码:
HTML(datum.html):
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body ng-app="myApp">
<form id="sessie_datum" method="post">
<input type="text" id="datepicker" placeholder="Klik hier om een datum te kiezen" name="wapbk_hidden_date" value="">
</form>
<script>
$("#datepicker").change(function () {
$.ajax({
type: 'POST',
url: 'datum.php',
data: $("#sessie_datum").serialize(),
dataType: 'text',
success: function (data) {
console.log('success!');
console.log(data);
},
error: function(data){
console.log('error!');
console.log(data);
}
});
});
</script>
</body>
</html>
PHP(datum.php):
<?php
session_start();
if(isset($_POST['wapbk_hidden_date'])){
$_SESSION['datum'] = $_POST['wapbk_hidden_date'];
}
if(isset($_SESSION['datum']) && strlen($_SESSION['datum']) > 0){
echo $_SESSION['datum'];
}else{
echo 'No datum yet defined.';
}
?>
控制台输出:
datum.html:17 success!
datum.html:18 This string is coming from the HTML input.
将两个文件放置在Web服务器上的相同文件夹中,并在输入字段中进行更改(模糊时)时观察控制台。