想要更改 SESSION 变量“fullname”的值而不刷新页面。
我使用ajax的实现:
第 1 页 html:
<input type="text" name="fullname" id="fullname" placeholder="Full name">
<button onclick="setSession()"> GO </button>
第 1 页脚本:
<script>
function setSession(){
var fullname = $("#fullname").val();
var dataString = 'fullname=' + fullname;
$.ajax({
type: "POST",
url: "Page2.php",
data: dataString,
cache: false,
success: function( data ) {
if(data === 'True'){
alert("<?php echo $_SESSION['fullname'];?>");
}
}
});
}
</script>
在第 2 页中:
session_start();
$_SESSION["fullname"] = $_POST["fullname"];
echo 'True';
exit();
它不会更改会话变量的值。
两个页面都有session_start()。
第 1 页 HTML
<input type="text" name="fullname" id="fullname" placeholder="Full name">
<button onclick="setSession()"> GO </button>
第 1 页 脚本
<script>
function setSession(){
$.ajax({
type: "POST",
url: "Page2.php",
data: { fullname: $("#fullname").val() },
dataType: "json",
cache: false,
success: function( data ) {
alert(data.fullname);
}
});
}
</script>
第 2 页 PHP 脚本
session_start();
$_SESSION["fullname"] = $_POST["fullname"];
echo json_encode(array('fullname' => $_SESSION['fullname']));
将服务器端和客户端脚本混合在一起通常是一个坏主意,因此请尝试将 PHP 和 Javascript 逻辑分开。它们都在页面请求生命周期的不同时间/阶段执行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)