关于PHP中session生命周期的问题
比如:我现在做一个功能,有一个文本框和一个按钮(还有一个接收输入数据的DIV)。当我每次在文本框里面输入数据并且点击按钮时就把文本框的数据追加到DIV中(注意:是追加)。...
比如:我现在做一个功能,有一个文本框和一个按钮(还有一个接收输入数据的DIV)。当我每次在文本框里面输入数据并且点击按钮时就把文本框的数据追加到DIV中(注意:是追加)。我现在想要的是把这些每次提交的数据够交给php处理以后再统一返回给DIV(直接使用jQuery的append我会),在这个过程中应该会有一个数据的暂存,所以我用的session:具体代码如下:
php页面:
<?php
if(isset($_SESSION["NAME"]))
{
}
else{
$_SESSION["NAME"]="";
}
for($i=0;$i<10;$i++):
$_SESSION["NAME"].=$_GET["name"];
endfor;
echo $_SESSION["NAME"];
jQuery页面:
$(document).ready(function(){
$("#butt").on("click",function(){
if($("#name").val()=="")
{
alert("不能为空");
}
else{
$.ajax(
{
type:"GET",
url:"ceshi.php?q="+Math.random(),
async:true,
data:{
name:$("#name").val(),
firstname:"T"
},
success:function(result){
$("div").html(result+"<br>");
}
});
}
});
});
?>
我编写代码出现的问题是:每次点击按钮时,DIV中只会显示当前的文本框里面的数据,而不是在DIV中追加数据。请问这个session的声明周期是多少?我以为他的生命周期是打开网页时起一直存在的,但是我写的这个代码貌似每点击一次按钮session就会重置一遍?
PHP页面中的for循环可以去掉,这个是我用来调试的。 展开
php页面:
<?php
if(isset($_SESSION["NAME"]))
{
}
else{
$_SESSION["NAME"]="";
}
for($i=0;$i<10;$i++):
$_SESSION["NAME"].=$_GET["name"];
endfor;
echo $_SESSION["NAME"];
jQuery页面:
$(document).ready(function(){
$("#butt").on("click",function(){
if($("#name").val()=="")
{
alert("不能为空");
}
else{
$.ajax(
{
type:"GET",
url:"ceshi.php?q="+Math.random(),
async:true,
data:{
name:$("#name").val(),
firstname:"T"
},
success:function(result){
$("div").html(result+"<br>");
}
});
}
});
});
?>
我编写代码出现的问题是:每次点击按钮时,DIV中只会显示当前的文本框里面的数据,而不是在DIV中追加数据。请问这个session的声明周期是多少?我以为他的生命周期是打开网页时起一直存在的,但是我写的这个代码貌似每点击一次按钮session就会重置一遍?
PHP页面中的for循环可以去掉,这个是我用来调试的。 展开
展开全部
我没看懂,你这个前台提交的数据跟session有什么关系?
如果说你是通过session获取提交的数据的话,那你每次提交的时候,新的值就会覆盖原先session的值,所以如果你想要实现追加的效果,那你必须把上次的值也传过去,也就是定义2个session名字,一个储存这次的值,一个储存上次的值,然后2个拼接起来再返回前台,
如果说你是通过session获取提交的数据的话,那你每次提交的时候,新的值就会覆盖原先session的值,所以如果你想要实现追加的效果,那你必须把上次的值也传过去,也就是定义2个session名字,一个储存这次的值,一个储存上次的值,然后2个拼接起来再返回前台,
追问
因为我是把值追加到同一个session里面啊,在session存活的这段时间里是可以追加的吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询