我有一个原始的php页面和一个用php编写的弹出窗口,我想知道如何将原始页面中的变量导入弹出窗口。一个可能的问题是原始页面中的变量本身没有定义,而是在与其连接的其他php页面中定义,并且它将根据用户的选择而改变。真诚期待建议,谢谢!
就像: 两个文件" business.php"和" school.php"在" business.php"中分享名为" info.php"的头文件。 $ theme =" business&#34 ;;并且在" school.php" $ theme =" school"。 在头文件中,我可以使用
if($theme=="business"){
echo "<a href='#' onclick='popitup();'>Popup</a>";
}
在业务标题部分中有一个按钮。 弹出窗口的功能如下:
function popitup() {
var newWindow = window.open('/../popitup.php', 'name');
if (window.focus) {
newwindow.focus()
}
return false;
}
我希望在&#34; popitup.php&#34;中使用$ theme变量,例如当用户点击&#34; Popup&#34;从商家页面链接,弹出页面可以显示与商业信息相关的选项列表。
答案 0 :(得分:0)
我建议如下:
首先,开始一个会话,并为所有页面保留该会话。
调用main
页面的页面听起来像是集中这些内容的最佳位置。我们称之为controller
虽然根据您的设置可能会出错。但是,如果定义了您所谈论的变量,那么它可能足够接近。
让它呼叫你的popup
,现在几乎持久。问题解决了。
您可能需要研究模型 - 视图 - 控制器(MVC)以及面向对象编程(OOP)概念。毫无疑问,这不是那个,但是一个有规划的好建筑可以让事情变得更容易。
TLDR:会话
这是一个link
编辑:如果您不想重构已有的内容,可以在网址末尾使用popup
致电query string
,在php端使用$_GET[]
访问它们。 Here is a link为此。那就像是,page.php?option1=abcd&option2=efgh
我认为这很混乱,有点过时,但它是有效的,并且工作正常。
另一个编辑:另一个选项是使用您存储在用户客户端的cookies
。它并不是万无一失,因为人们可能没有它们,但它可能会完成你想要的。对于那些人Here is a link。
第三次编辑:您可以将用户的选择存储在数据库中,并在弹出窗口中使用代码将其拉出来。