【发布时间】:2011-06-17 07:13:29
【问题描述】:
function changeClient(s) {
if(s.value!=0)
{
document.location.href = "map.php?c="+s.value;
}
我必须将 s 的值分配给会话变量 $_SESSION['id']。我该怎么做?
【问题讨论】:
标签: php javascript session
function changeClient(s) {
if(s.value!=0)
{
document.location.href = "map.php?c="+s.value;
}
我必须将 s 的值分配给会话变量 $_SESSION['id']。我该怎么做?
【问题讨论】:
标签: php javascript session
您不能将客户端变量(Javascript)分配给服务器端变量(PHP)。
您必须使用 ajax 来执行此操作。
<script>
function assignJsValueToPHPSession()
{
var jsVar = 1;
$.ajax({
type:post,
url: "test.html",
data: 'sessionjsvar=' + jsVar,
success: function(){
$(this).addClass("done");
}
});
}
test.php
<?php
$_SESSION['phpvalue'] = $_POST['sessionjsvar'];
?>
【讨论】:
您可以使用 javascript 设置 cookie,并且可以在服务器端变量 (PHP) 中访问相同的 cookie。
$.cookie("name1", "test"); // emample 1
$.cookie("name1", "test", { expires: 7 }); // emample 2
$.cookie("name1", "test", { path: '/User', expires: 7 }); // emample 3
获取 cookie
警报($.cookie("test"));
//在PHP中
<?php
print_r($_COOKIE);
print)r($_REQUEST);
?>
【讨论】:
$_SESSION['id'] = $_GET['c']
将您发送的 GET 参数设置为会话变量。
【讨论】:
session_start()?
echoing SESSION变量进行验证。
$_SESSION['id'] = $_GET['c']
首先检查c是否真的在URL中。
【讨论】: