欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

网页数据保存方法 -- PHP开发

程序员文章站 2022-04-22 12:18:32
...
PHP 网站开发 数据库 小弟正在做一个网站,使用PHP开发;

分为3个页面,每个页面都会让用户填写一些内容;

需要在第3个页面的时候建立数据库保存用户的设置,那么如何在第3页的时候取得 1,2个页面的数据;

需要考虑在第3三步还未建立数据库时,
用户又返回到前面1.2页面再次修改,这种情况下需要展示用户刚填写的一些数据,不能让用户返回后就什么都没有了,又得重新填写;

如果用户多的情况下如何处理好呢?(假设有1万用户同时使用)


目前我想到是在1、2页面用户设置的后就建立数据库,在第3个页面在读出来处理,但是这样感觉比较奇怪。

第一次做网站,求大神指点。

回复讨论(解决方案)

这位小弟,我觉得前面3步可以写到COOKIE里面,或者可以写到SESSION里面。最后再保存到数据库中。

能否举个简单例子说明下呢?谢谢

也可以做成假的三页. 实际上是三个div在来回切换. 点下一页以后就把第一个div隐藏第二个显示,诸如此类 最后一起提交. 这样之前输入的信息也肯定在的

1、3楼的方法都很好

”返回到前面“ 是指按了后退按钮还是重新输入了url?

"返回到前面" 是指按了后退按钮吧

应该这样说:假如用户设置了1.2页面的内容。到3页面时又觉得1页面有改动的地方,于是再返回到1页面修改,
我想要的效果是用户在返回1页面时候也能看到上一次的设置!

这个功能浏览器帮你做了,浏览器保存了history 记录。

是我没有说清楚,每个页面会给用户一个初始化的默认值。例如用php取下当前的时间,而且页面的数据每个用户肯定是不一样的,

这种情况下浏览器肯定不会保存吧?

有回退最好用cookie,有初始化也没所谓,先读初始化,再读cookie,后者有值则覆盖前者

填表 cookie 是不二选择

或者也可以用local stroage
具体可以看看
JavaScript本地存储实践(html5的localStorage和ie的userData)

首先你必须清楚:一个用户和一万个用户同时使用,处理方式是一样的。
因此你只需要考虑一个用户怎么做就可以了

3个页面,从第一个进入到第二个,从第二个进入到第三个。实际进行的都是提交
如果你允许用户回退到前一页,那么页面中应设置回退按钮,而不是仅依赖浏览器的后退按钮

浏览器的后退按钮会回复前页表单的现场,但并不一定总是你需要的动作
当表单页使用了 session 时,默认会阻止浏览器恢复现场

也可以做成假的三页. 实际上是三个div在来回切换. 点下一页以后就把第一个div隐藏第二个显示,诸如此类 最后一起提交. 这样之前输入的信息也肯定在的

正解 为啥不用1个页面呢, , 一个页面分3部分分别提交,内容随便改

session在上万个用户同时使用时 服务器压力大

一般处理的办法是
第一个页面填写input然后post到第二个页面


第二个页面填写input再加上第一个页面提交过来的值如




第三个页面填写input再加上前2个页面提交过来的值如




然后想怎么处理就怎么处理了

支持3楼,另外若需要初始化,可结合Ajax来使用,效果杠杠的~~~


也可以做成假的三页. 实际上是三个div在来回切换. 点下一页以后就把第一个div隐藏第二个显示,诸如此类 最后一起提交. 这样之前输入的信息也肯定在的

正解 为啥不用1个页面呢, , 一个页面分3部分分别提交,内容随便改


也可以做成假的三页. 实际上是三个div在来回切换. 点下一页以后就把第一个div隐藏第二个显示,诸如此类 最后一起提交. 这样之前输入的信息也肯定在的

正解 为啥不用1个页面呢, , 一个页面分3部分分别提交,内容随便改

如果回退那么是否要再传回去呢?

session在上万个用户同时使用时 服务器压力大

一般处理的办法是
第一个页面填写input然后post到第二个页面


第二个页面填写input再加上第一个页面提交过来的值如




第三个页面填写input再加上前2个页面提交过来的值如




然后想怎么处理就怎么处理了

如果回退是否要传回去呢?


session在上万个用户同时使用时 服务器压力大

一般处理的办法是
第一个页面填写input然后post到第二个页面


第二个页面填写input再加上第一个页面提交过来的值如




第三个页面填写input再加上前2个页面提交过来的值如




然后想怎么处理就怎么处理了

如果回退是否要传回去呢?

感觉还是这种方法好,不用考虑cookie,回退的话 你可以做一个回退的form 提交回要修改的页面,最后哪个页面把你想要做的数据库功能加进去



也可以做成假的三页. 实际上是三个div在来回切换. 点下一页以后就把第一个div隐藏第二个显示,诸如此类 最后一起提交. 这样之前输入的信息也肯定在的

正解 为啥不用1个页面呢, , 一个页面分3部分分别提交,内容随便改


也可以做成假的三页. 实际上是三个div在来回切换. 点下一页以后就把第一个div隐藏第二个显示,诸如此类 最后一起提交. 这样之前输入的信息也肯定在的

正解 为啥不用1个页面呢, , 一个页面分3部分分别提交,内容随便改

如果回退那么是否要再传回去呢?

回退 的动作就是隐藏第3个部分, 显示第二部分, 在回退就隐藏第二部分 显示第一部分, 只要你使用字段的id是不相同的, 那么, 这些值就会一直保存在页面上,