【发布时间】:2013-02-16 11:19:54
【问题描述】:
我有一个非常基本的框架布局:index.html
<frameset rows="80,*" frameborder="1" border="5" framespacing="0">
<frame name="topNav" src="top_nav.html">
<frameset cols="220,*" frameborder="1" border="5" framespacing="0">
<frame name="menu" src="menu_1.php" marginheight="0" marginwidth="0" scrolling="auto" noresize>
<frame name="content" src="content.php" marginheight="0" marginwidth="0" scrolling="auto" noresize>
</frameset>
</frameset>
还有一个简单的登录脚本,用于检查用户名和密码是否与数据库匹配等等
现在我想要它做的是如果信息正确,是自动重定向菜单栏,但我能做的就是重定向内容部分
// check to see if they match!
if ($username==$dbusername&&$password==$dbpassoword)
{
$_SESSION['username']=$username;
echo '<meta http-equiv="REFRESH" content="2 ; url=servers.php" target="menu">';
}
else
echo "<center>Incorrect Information!</center>" ;
现在,如果我让用户点击<a href> 标签,我可以轻松做到这一点
例如<a href="servers.php" target="menu">click me</a>
所以我想我可以简单地将target="menu" 放在我的meta 标签中,但它所做的只是重定向内容页面。
所以我的问题是,我做错了什么,还是有更简单的方法来做到这一点?
【问题讨论】:
-
自从我看到在网站上使用框架集以来已经很久了……或者元刷新。如果您已经在使用 PHP,为什么不将这些部分包含到您的显示中 - 而不是制作框架...然后您可以在成功登录后执行 header('Location: something') 。如果您想坚持使用框架,我建议使用 JavaScript 强制重新加载元标记。 document.getElementById('menu').location = "something",也许吧?
-
你好 applehat,如果我说实话,我不是框架的忠实粉丝,但我想在一段时间之前给它,所以我为自己做了一个小项目并且在路上学到了很多东西。但将来我会使用 CSS 来制作它,因为它看起来更可靠。并感谢您的回答,它也有效:)
-
没问题!是的。框架集和元刷新是网络世界中真正的老技术。关于唯一“可接受”的框架不再是 iFrames ......甚至应该谨慎使用它们。 JavaScript 让你现在做的一切都变得更干净了 =)