从iframe中的页面打开链接作为普通页面

时间:2015-06-28 09:51:56

标签: php html iframe

早上好,

最近我因为教育原因试图建立一个简单的聊天室。在我的登录/注册/欢迎屏幕上,我有一个按钮,可以在iframe上打开login.php文件,以便您可以登录。如果您将正确的用户名和密码存储在数据库中,则会将您重定向到./chat/index.php页面(主聊天室页面)。问题是此页面在iframe中打开。有没有办法让它在普通页面的同一窗口上打开,就像简单的按钮链接一样。

这是我在主页上的代码:

<div id="login" class="menu">
<h4>I have an account :)</h4>
<form method="get" action="./login" target="loginFrame">
    <button type="submit" onclick="showLoginFrame">Please let me in so I can talk with my friends!</button>
</form>
<iframe id="loginIframe" name="loginFrame" frameborder="0" scrolling="no"></iframe>
<script type="text/javascript">  
  function showLoginFrame() {  
    var iframe1 = document.getElementById("loginIframe");  
    iframe1.style.visibility="visible";
  }
</script>

这是登录php页面(与db完成所有工作的那个)上的代码的一部分,重定向到聊天页面:

if($user == $dbusername && $pass == $dbpassword)
   {
    session_start();
     $_SESSION['sess_user']=$user;
/* Redirect browser */
    header("Location: ../chat/");
   }
} else {
    echo "Invalid username or password!<br><br>";
}

1 个答案:

答案 0 :(得分:1)

虽然我同意@Ofir Baruch,但您应该考虑使用对话框,将下面的javascript放在./chat/index.php上,应该将其从框架中删除。

if (top.location!= self.location) {
   top.location = self.location.href;
}

如果这对您不起作用,则此处还有另外两种解决方案:

https://css-tricks.com/snippets/javascript/break-out-of-iframe/