序列化过的数据,通过post方式传值,数据消失

WBOY
Release: 2016-06-23 14:15:30
Original
1099 people have browsed it

序列化过的数据,通过post方式传值,数据消失
谁知道怎么回事


回复讨论(解决方案)

<form action="index.php?app=compare_download" method="post">                    <input type="hidden" name="s" value="{$s}" />          <input type="submit" value="导出失败数据"/></form>
Copy after login

现在都不习惯贴代码么?凭语文猜想能力?

$s = "ssssssssss";
Copy after login

现在都不习惯贴代码么?凭语文猜想能力?
一点点来

$s经过 序列化处理了

php的代码?

php的代码?
对,是 PHP的,我用form提交,接受的数据只用序列化的长度,没有数值

用了模板? 查看源码看看$s生成的值是否正常。
php代码你怎么接收的,贴下代码。

对,用ECMALL模板

$s = $_POST['s'];echo $s = unserialize(stripslashes($s));
Copy after login
Copy after login
Copy after login

输出的是这个 s:10:

用了模板? 查看源码看看$s生成的值是否正常。
php代码你怎么接收的,贴下代码。
贴出来了,源代码没看出来有什么异样

stripslashes函数,无关紧要,我就试试好不好使

$_POST['s'] 值取到没有 ,直接$s='aaaa' 有没有返回值 一步一步调试

javascript里面有个转换函数,我忘了叫什么名字了。需要用它来转换一下在序列化。如果你想不起这个函数,也可以把序列化过的数据base64

$s = $_POST['s'];echo $s = unserialize(html_entity_decode(stripslashes($s)));
Copy after login

看下能不能反序列化。

本帖最后由 xuzuning 于 2013-07-12 18:20:57 编辑

对,用ECMALL模板
$s = $_POST['s'];echo $s = unserialize(stripslashes($s));
Copy after login
Copy after login
Copy after login

输出的是这个 s:10:
你就不能 echo $_POST['s']; 看看?

再说序列化后的字符串是用双引号括起的
又放在双引号中,那浏览器能认识吗?


对,用ECMALL模板

$s = $_POST['s'];echo $s = unserialize(stripslashes($s));
Copy after login
Copy after login
Copy after login

输出的是这个  s:10:
你就不能 echo $_POST['s']; 看看?

再说序列化后的字符串是用双引号括起的
你  又放在双引号中,那浏览器能认识吗?
正确

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template