Javascript 从HTML表单输入字段设置php会话变量
我有一个页面,它有一个Javascript 从HTML表单输入字段设置php会话变量,javascript,php,html,session-variables,Javascript,Php,Html,Session Variables,我有一个页面,它有一个javascript日期选择器,其结果进入HTML表单的输入框(见下图)。这个很好用 我还希望选择的日期存储在会话变量中。有人能指出我应该怎么做吗?能否在javascript中分配会话变量 迄今为止的代码: <?php session_start(); 需要在服务器上将会话变量设置为php变量。使用Post方法调用服务器的HTML表单将此变量传递到php页面,可以使用 <?php $start_date = $_POST["StartDate"]; $_SE
javascript
日期选择器,其结果进入HTML表单的输入框(见下图)。这个很好用
我还希望选择的日期存储在会话变量中。有人能指出我应该怎么做吗?能否在javascript
中分配会话变量
迄今为止的代码:
<?php
session_start();
需要在服务器上将会话变量设置为php变量。使用Post方法调用服务器的HTML表单将此变量传递到php页面,可以使用
<?php
$start_date = $_POST["StartDate"];
$_SESSION['start_date'] = $start_date;
?>
将其设置为与会话
$_SESSION["date"] = $_POST["StartDate"];
要“使用javascript设置”,请使用AJAX。例如会话变量不能直接用JavaScript分配,但是如果必须坚持使用JavaScript,可以使用AJAX向PHP文档发送创建/更改会话变量的请求
在PHP文档(我们称之为date\u assign.PHP
)中,编写以下内容:
$date = $_POST['date'];
$_SESSION['date'] = $date;
然后在JavaScript中使用此函数(当然包括jQuery库)将请求发送到PHP文档
// Function to call in order to change session variable.
function sessionVariable() {
// Get date from picker.
var date = $('#inputFieldStart').value();
// Create data string.
var datastr = 'date=' + date;
// Create the AJAX request.
$.ajax({
type: 'POST',
url: 'date_assign.php',
data: datastr
});
}
当然,要做到这一点还有很长的路要走,但这意味着您可以使用JavaScript来完成。您可以在需要设置会话变量时调用该函数,这可以在一段时间间隔内完成,或者您可以将单击侦听器绑定到Submit
按钮以发送数据,这就是您的调用。您是对的,是的,但我要做的是在选择日期时设置会话变量。表单此时已加载。@PHP通常用于创建一个HTML文档,其中可以包含javascript—这只是PHP的一堆文本。您不能从javascript直接与PHP交互-您必须执行某种HTTP请求!如果将值保存在某个数据库中,请清理输入,否则以后会出现问题!
$date = $_POST['date'];
$_SESSION['date'] = $date;
// Function to call in order to change session variable.
function sessionVariable() {
// Get date from picker.
var date = $('#inputFieldStart').value();
// Create data string.
var datastr = 'date=' + date;
// Create the AJAX request.
$.ajax({
type: 'POST',
url: 'date_assign.php',
data: datastr
});
}