2016-03-22 53 views
-1

我有parent.php弹出一个出口通过使用此代码弹出模态窗口:Ajax Modal窗口可以访问父窗口PHP数据吗?

<script type="text/javascript"> 
$("#modal-layer").load("/exit.php"); 
</script> 

parent.php有一些PHP数据,如:

$name= "Abraham";

虽然exit.php具有下面的代码:

Hello, <?php echo $name; ?>!

但结果是空白的,因为$name没有通过Ajax窗口。

有没有办法让这项工作?

+0

要么保存在cookie或会话中使用名称,或使用'$(“#modal-layer”).load(“/exit.php?name= ”);',并在'exit.php'中做'Hello ,<?php echo $ _GET ['name']; ?(不使用任何验证使用这些数据可能是危险的) – blex

+0

@blex GET是一个不错的选择,但是当名称是由空格分隔的两个单词时,如何使它工作? '/exit.php?name=Abraham Linocln'将不起作用 – rockyraw

+0

可能是会话数据的一个好例子 – epascarello

回答

1

便宜又脏,添加名字到PHP文件调用的查询字符串

$("#modal-layer").load("/exit.php?name=<?php echo urlencode($name); ?>"); 

然后在exit.php

Hello, <?php echo urldecode($_GET['name']); ?>! 

替代:

$("#modal-layer").load("/exit.php", { "name": <?php echo $name); ?>}); 
+0

如果名称包含两个由空格分隔的词,该怎么办? – rockyraw

+0

@rockyraw更新,以照顾到 –

+0

谢谢,效果不错 – rockyraw