我在index.php中有以下代码:
<div class="done">
<b>Thank you<?php
echo $_SESSION['session_vname']." ";
echo $_SESSION['session_lname']."! </b><br><br>Email: ";
echo $_SESSION['session_email']."<br> Status: ";
echo $_SESSION['session_status']."<br>";
?>
</div>
和
<div class="form">
<form method="post" action="process.php">
<div class="element">
<label>First Name</label>
<input type="text" name="vname" class="text" />
</div>
<div class="element">
<label>Last Name</label>
<input type="text" name="lname" class="text" />
</div>
<div class="element">
<label>Email</label>
<input type="text" name="email" class="text" />
</div>
<div class="element">
<label>Status</label>
<input type="text" name="status" class="text" />
</div>
<div class="element">
<input type="submit" id="submit"/>
<div class="loading"></div>
</div>
</form>
</div>
我使用ajax提交执行表单,因此index.php不会刷新。等结束了 获得fadeOut和fadeIn。
除下列部分外,此工作正常:
当显示 div class =“form”时,它会显示上次提交前的表单中的会话变量。
示例:
首先输入:session_vname = testa
首先输出$ _SESSION ['session_vname'] =没有
第二个输入:session_vname = overflow
第二个输出$ _SESSION ['session_vname'] = testa
最后问题是:
如何在表单提交后强制更新会话变量,还是不重新加载index.php?
答案 0 :(得分:1)
在向查看器显示页面之前,在服务器端执行PHP代码。这意味着如果您不想刷新整个页面,则需要使用JavaScript更新静态元素。
答案 1 :(得分:0)
您无法使用javascript更新服务器端php会话,您应该使用Cookie来实现该类型的功能