3

基本上我有这样的设置:

<body> 
<div id="header">
   <h3> Header </h3>
</div>

<div id="body">
</div>

<div id="foot">
</div>

这里的想法是引导用户完成填写数据以计算值的六步向导。

每个步骤都被加载到<div id="body">第一步中,通过 jQuery 加载,之后的步骤通过 JavaScript 函数加载。

这些步骤称为:step01.php、step02.php 等...

现在我的问题是:当我从 step01.php 加载到 step02.php 时,这<div id="body"> 是否被视为页面重新加载?因为我想将 step01.php 中填写的变量保存到会话中,或者保存到其他 .php 文件中。但是由于 php 是服务器端,我想知道 div 中的文件重新加载是否被视为整页重新加载?

如果不重新加载整页就无法做到这一点,请提出其他建议……我已经阅读了一些有关 AJAX 的文档,但对我来说仍然很模糊。因此,如果有人有“新手教程”,请提出建议。

此时我将变量保存在一个 JavaScript 文件中,从中制作 cookie,然后使用 php.ini 从 cookie 中提取变量。但我知道有一种更简单的方法。

4

3 回答 3

2

是的,它被认为是服务器端 php 脚本的“页面加载”。您在会话中放入的任何内容都将在下次重新加载 div 时出现。

于 2013-02-15T07:57:06.643 回答
2

但是由于 php 是服务器端,我想知道 div 中的文件重新加载是否被视为整页重新加载?
在这种情况下,答案是:是的。
服务器端 PHP 不知道您在客户端上使用的 div 元素。一般来说,php 对客户端对服务器端脚本的数据/输出所做的事情几乎没有兴趣。
它所关心的只是当您重新加载完整的页面或使用 ajax 时发生的 http 往返。
对于 php 核心来说都是一样的。请求进来,一些初始化发生,脚本被处理,输出被发送到客户端(作为字节流 - 在这个级别,php对你发送给客户端的内容没有“理解”;html,纯文本,图像,应用程序代码,与 php 相同),一些垃圾收集发生,关闭机制启动,完成。

于 2013-02-15T08:03:29.227 回答
0

如果您只是使用 jQuery 加载到 div 中,它们不是页面重新加载。即地址栏中的 url 保持不变。

于 2013-02-15T07:56:47.263 回答