博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
页面表单预览数据传递注意事项
阅读量:6911 次
发布时间:2019-06-27

本文共 785 字,大约阅读时间需要 2 分钟。

有时候需要提供给用户对刚填写的表单“预览”功能,预览后还要返还源页面,并且保证页面数据不丢失。

有的是采用js功能给一个弹出框。

但有的需要真实html页面的跳转,我昨晚上弄的就是这个,现在记下来备用

不好意思,我暂时用PHP代码来讲,其它的语言中也应该有这些api函数:

1.form表单提交,获取多个input表单,组成数组。

2.显示预览页面时,先将数组用json_encode();进行编码,然后$smarty->assign('var', $var)到预览页面

3.在预览页面用html标签<textarea><{$var}></textarea>接收(我用<input type="text" ..../>,没有接收成功)

4.用form表单提交后获得该$var,由于我的页面提交后对json格式的数据中的双引号进行了转义

   所以,如果你们的也这样,就用php的htmlspecialchars_decode($var)函数将双引号还原

5.经过第四步后就可以用PHP的json_decode($var,true);进行解码,获得最初源页面提交的数组了

2012年10月25日 14:42:14

今天又发现一个问题,中文字符的json编码是用转义字符+u+16进制数字(\u5f20\u5fd7\u658c)组成的,

不知道什么原因,入库(mysql)时这里的转义斜线没有了(变成了:u5f20u5fd7u658c),再读出来json_decode()时,当然就不能显示汉字了,

我找到了义个PHP函数addcslashes($var,'\\'),这样就可以在每个转义斜线的前边再加一个转义斜线(变成了: \\u5f20\\u5fd7\\u658c),入库时由于只去掉了一个反斜线,所以格式正好正确,直接json_decode();就行了,o(∩_∩)o 哈哈

转载地址:http://ftycl.baihongyu.com/

你可能感兴趣的文章
【cocos2dx】使用VS插件在VS2012/2013上编辑和调试Quick-Cocos2d-x的Lua代码
查看>>
Centos6.0之pptpd+mysql+freeradius实现***帐号统一认证管理
查看>>
Excel导出数据
查看>>
解释Windows7“上帝模式”的原理
查看>>
httpClient4.* 使用教程
查看>>
相对和绝对路径、cd命令、创建和删除目录mkdir/rmdir 、rm命令
查看>>
yum安装配置nagios
查看>>
linux下Bash局部变量及信号捕捉等概念解释
查看>>
HTML5 input placeholder 颜色修改示例css
查看>>
cacti-0.8.8c 下安装realtime插件
查看>>
我的友情链接
查看>>
从0开始学大数据-Java基础开篇(1)
查看>>
github常用命令总结(一)
查看>>
Intent(意图)
查看>>
Exchange Server 2007迁移Exchange Server 2010 (2) ---前期准备之二
查看>>
翻译:Fast dynamic extracted honeypots in cloud computing --5.CONCLUSION
查看>>
Effective C++: constexpr(during compilation).
查看>>
TCP/IP协议三次握手流程
查看>>
了解Oracle内核代码层的作用
查看>>
我的友情链接
查看>>