0

我有 2 个 php 页面。从第一个 php 页面(比如 1.php)我打印一个 iframe(显然使用 html)并将其源代码保持为第二个 php 页面(比如 2.php),所以我的问题是我是否可以使用初始化的变量在 2.php 的 1.php 中?就像在 1.php 我有一个变量 $name 那么我可以使用来自 2.php 本身的 $name 的值吗?如果不是,那么应该有什么比会话更好的选择(我正在使用免费服务器!)。

4

2 回答 2

1

不,

考虑导致页面呈现的事件序列:

  1. 1.php被请求
  2. 1.php执行,生成iframe
  3. iframe返回给浏览器,指向2.php
  4. 2.php被请求
  5. 2.php执行,生成HTML
  6. 2.php的输出返回给浏览器

在浏览器知道它想要 2.php 之前,1.php 已经完成执行(并且忘记了它的所有变量)。

您可以使用 iframe 的 URL 中的查询字符串将变量传递给 2.php,例如example.com/2.php?var1=val1&var2=val2.

另一方面,我认为您应该重新考虑如何构建网站。例如,您可以使用<div>withoverflow: scroll代替 iframe,这样就不需要第二个请求。您还可以考虑使用$_SESSION来跟踪一些用户数据。

于 2013-02-07T05:40:51.813 回答
0

您可以在该 iframe 的该 url 中传递该变量,然后您可以在 iframe 页面中访问该变量 - page.php?var1=value1

例如:

echo "<iframe src='sitename.com.au/directory/app/pagename.cfm?var1='$val'
        width='100%' scrolling='vertical'></iframe>";
于 2013-02-07T05:35:51.633 回答