将变量粘贴到$ _GET
我有两个页面。首先我们在其url中使用$ _POST变量打开,第二个通过iframe首先在内部打开。这两个PHP文件,其次是HTML操作。
变量我在$ _ POST传递通过$ _GET到iframe中:
echo '<iframe src="index.php&first=' . $first . '&second=' . $second . '&third=' . $third . '&iframe=true"></iframe>';
$first, $second, $third
变量里面有他们的文字有一些HTML和新行(\ n)的。
的问题是,当数据通过了$_GET
到IFRAME,所有变量的新行消失。
Tryed传递变量像base64_encode($first)
,然后base64_decode()
解码。它的工作原理错误,文本的某些部分不能正确解码,可能是因为iframe url中的坏符号。
另外tryed到所有变量扔进单个阵列,序列化,然后通过Base64编码 - 这样服务器对误差500(它也给出了404相同的错误)。
请不要问我为什么我做的网页这样的结构。它不应该改变。
,这是什么解决办法吗?
你可以写的$first,$second,$third
的内容first.txt,second.txt,third.txt
,然后打开你的iframe的脚本
他们每次都会改变,它不是正确的情况 – Jasper 2012-03-25 16:51:52
你最初的做法是错误的。
POST变量不应该去任何地方。 POST请求服务器必须命令浏览器重新加载页面后。 整个页面,不仅包含iframe。
重新加载之后,您可以向用户显示任何iframe。
要传递数据,会话将是理想的解决方案。
但是,某些解决方案取决于所有混乱的数据性质和总体目的。
根据你的情况,你也可以使用Javascript来访问父框架。
您可以将数据存储在第一窗口的JavaScript数组,然后iframe的子窗口可以通过父调用它。*
小心这样做。查询字符串具有长度限制,并且会自动截断太长的任何内容,并且这可能会在没有警告的情况下发生在客户端的AND/OR服务器端。 – 2012-03-25 17:28:57