我在理解如何传输 javascript(客户端)变量时遇到一些问题,以便它们可以从 php(服务器端)作为会话访问:在 PHP 中获取 iframe 的“src”值?
现在我处于使用 firebug 尝试调试正在发生的事情的情况,但这没有任何意义:
我有这个功能来更新 iframe,我想传递该 iframe 正在显示的页面:
function frameclick(pageurl)
{
$.post("session_write.php?",
{
frameurl : pageurl
}
$("#iFrame1").attr('src', pageurl);
console.log ('<?php echo "logout:".$langpath.$_SESSION['frameurl'];?>');
}
pageurl 是前。“/lang/en/new.htm” - 如果我用萤火虫检查它,我也可以看到它说它正确传递了它(也有 / 的转换)。
我发布到的脚本服务器端是这样的:
#session_write.php
<?php
session_start();
print_r($_GET['frameurl']);
if (isset($_GET['frameurl']))
{
$_SESSION['frameurl'] = $_GET['frameurl'];
print_r($_SESSION);
}
?>
发布到服务器上的那个 php 脚本将通过 javascopt 失败 - $_SESSION['frameurl'] 将是 '',但如果我前。像这样手动操作:(http):
//localhost/phpmenu/session_write.php?frameurl=lang%2Fen%2Fnew.htm
那么它将在 $_SESSION["frameurl"] 变量中正确设置。
我根本无法理解在浏览器中进行 javascript 发布和手动发布之间有什么不同,为什么它会导致我出现这个问题?
有人有想法吗?谢谢