1

我已经为网页创建了一个登录页面。登录后用户应该被重定向到另一个页面。但是当你直接在浏览器中提供重定向 url 时,它会打开。它不应该是那样的。我在这里遗漏了什么吗? .我是新手,请帮帮我。我已经在javascript中完成了表单验证并打开了重定向url,如下面的代码所示

function check(form)
{
    if(form.userid.value == "myuserid" && form.pswrd.value == "mypswrd")
    {
        window.open('demo/index.html','_self')
            }
    else
    {
        alert("Error Password or Username")
    }
}

完整代码:

<html>
<head>
    <title>Login page</title>
<style>
</style>
</head>
<body>
    <h1> Login Page </h1>
        <form name="login">
            Username<input type="text" name="userid"/>
            Password<input type="password" name="pswrd"/>
            <input type="button" onclick="check(this.form)" value="Login"/>
            <input type="reset" value="Cancel"/>
        </form>

    <script language="javascript" >
    function check(form)
    {
        if(form.userid.value == "myuserid" && form.pswrd.value == "mypswrd")
        {
            window.open('demo/index.html','_self')
        else
        {
            alert("Error Password or Username")
        }
    }
</script>
</body>
</html>
4

3 回答 3

2

如果你想防止在没有登录的情况下查看页面,你应该使用 cookie 或 session。它在 php 中可用。

在java脚本中,你可以使用localstorage

将您的 if 条件修改为

if(form.userid.value == "myuserid" && form.pswrd.value == "mypswrd")
        {
            window.localStorage.setItem("Login", "true");
            window.open('demo/index.html','_self');

         } 

并在您的目标页面中添加以下脚本,demo/index.html

window.onload=function(){
if(window.localStorage.getItem("Login")!="true") {
 alert("Please Login");
 window.open('login.html','_self');
}
};

注意:登录后即可访问目标页面。如果要注销,在注销下,应将login项目设置为false-

window.localStorage.setItem("Login", "false");

否则,如果您已登录至少一次,则始终可以访问该页面。

于 2013-10-21T11:08:04.017 回答
0

我认为你应该试试这个

<html>
<head>
  <title>Login page</title>
</head>
<body>
 <h1> Login Page </h1>
  <form name="login">
     Username<input type="text" name="userid"/>
        Password<input type="password" name="pswrd"/>
        <input type="button" onclick="check(this.form)" value="Login"/>
        <input type="reset" value="Cancel"/>
    </form>
    <script language="javascript" >
function check(form)
{
    if(form.userid.value == "Username" && form.pswrd.value == "Password")
    {
        window.open("http://www.google.com");
    }
    else
    {
        alert("Error Password or Username")
    }
}
          </script>
 </body>
</html>
于 2013-10-21T11:11:06.813 回答
0

问题不在于这一方面,而在于 demo/book1/index.html 页面。除非您在此处添加代码以防止对其进行访问,否则您将始终能够在浏览器中打开它。我认为您需要使用某种提供开箱即用身份验证的框架进行调查。

于 2013-10-21T10:38:26.750 回答