将变量传递给Iframe

时间:2011-10-17 12:20:51

标签: php variables iframe

我正在尝试在php中制作一个计时器。它位于iframe上,因此iframe可以定期刷新。我无法将会话变量传递给iframe。如果我回显页面上的会话变量(iframe上方),它显示正确,但它不想在iframe中回显。请帮忙。

第1页

<?php
session_start();
....
if ($_SESSION['auth']) {
$d=getdate();
$h=$d['hours'];
$m=$d['minutes'];
$s=$d['seconds'];
$_SESSION['h']=$h;
$_SESSION['m']=$m;
$_SESSION['s']=$s;
$_SESSION['m12']=-1;
echo "<a href='http://localhost/index.php?option=com_content&view=article&id=50&tid=$tid'>Continue</a>";
?>

第2页

<IFRAME SRC="timer.php" WIDTH=450 HEIGHT=100></IFRAME>

timer.php

<head>
<meta http-equiv="Refresh" content="1; ">
<?php
session_start();
?>
</head>
<body>
<?php
$hourin=$_SESSION['h'];
$minin=$_SESSION['m'];
$secin=$_SESSION['s'];
echo $secin . " ";

2 个答案:

答案 0 :(得分:0)

timer.php中,将session_start()移至脚本的第一行。会话需要在标头中设置的cookie,除非您启用了输出缓冲,否则在发送内容后无法修改。

这可能无法解决问题,但无论如何都要这样做,因为这样可以避免以后遇到的其他问题。

如果这不能解决问题,请在var_dump($_SESSION);结尾和page1正文中向我们展示timer.php的结果。

答案 1 :(得分:0)

我认为如果您将iframe网址中的变量作为get值传递,它可能会解决您的问题。例如,在第2页中,将iframe链接创建为:

<IFRAME SRC="timer.php?h=<?php echo $h; ?>&m=<?php echo $m; ?>&s=<?php echo $s; ?>" WIDTH=450 HEIGHT=100></IFRAME>

并在timer.php中

<?php
$hour = $_GET['h'];
$min = $_GET['m'];
$sec = $_GET['s'];
...
?>
相关问题