如何从一个页面到另一个页面使用JavaScript?
如果用户有效,则从pipe理页面浏览器应该转到另一页面。
当用户input他的用户名和密码,然后点击OKbutton,然后显示另一个页面,login页面自动closures。
我怎样才能用JavaScript做到这一点?
要简单地使用javascriptredirect浏览器:
window.location.href = "http://example.com/new_url";
要redirect并提交表单(即login信息),不需要javascript:
<form action="/new_url" method="POST"> <input name="username"> <input type="password" name="password"> <button type="submit">Submit</button> </form>
你不能明确地依靠客户端 JavaScript来确定用户证书是否正确。 浏览器(以及执行该代码的所有代码)都在用户的控制之下,而不是你自己,所以这是不可靠的。
用户名和密码需要用表格input。 确定button将是一个提交button。 action属性必须指向一个将由检查凭证的程序处理的URL。
这个程序可以用JavaScript编写,但是你怎么去做呢,取决于你使用的是哪个服务器端的JavaScript引擎 。 请注意SSJS不是一个主stream的技术,所以如果你真的想使用它,你将不得不使用专门的托pipe或pipe理你自己的服务器。
(半年之后,SSJS更为常见,这要归功于Node.js,尽pipe它还是相当专业的)。
如果以后要redirect,那么程序需要发出一个HTTP位置标题 。
请注意,在输出任何专用页面之前,您需要检查凭据是否正常(通常通过在Cookie中存储令牌,而不是实际的密码)。 否则,任何人都可以通过知道URL(因此绕过login系统)到达私人页面。
在javascript中validation用户是pipe理员会导致麻烦,因为任何人都可以看到JavaScript代码。 服务器是应该在login过程之后告诉pipe理员和普通用户之间区别的人,然后相应地生成新的页面。
也许这不是你想要回答你的问题:
window.location.href="<the page you are going to>";
我得到的正确解决scheme是
<html> <head> <script type="text/javascript" language="JavaScript"> function clickedButton() { window.location = 'new url' } </script> </head> <form name="login_form" method="post"> .................. <input type="button" value="Login" onClick="clickedButton()"/> </form> </html>
这里的新url是在单引号内给出的。
尝试这个,
window.location.href="sample.html";
这里sample.html
是下一个页面。 它会进入下一页。
更简单的方法是window.location.href = "http://example.com/new_url";
但是,如果你想检查用户名和密码是否为空或使用JavaScript,并将其发送到php来检查用户是否在数据库中。 遵循这个代码你可以轻松地做到这一点。
html表单 –
<form name="myForm" onsubmit="return validateForm()" method="POST" action="login.php" > <input type="text" name="username" id="username" /> <input type="password" name="password" id="password" /> <input type="submit" name="submitBt"value="LogIn" /> </form>
javascriptvalidation –
function validateForm(){ var uname = document.forms["myForm"]["username"].value; var pass = document.forms["myForm"]["password"].value; if((!isEmpty(uname, "Log In")) && (!isEmpty(pass, "Password"))){ return true; }else{ return false; } } function isEmpty(elemValue, field){ if((elemValue == "") || (elemValue == null)){ alert("you can not have "+field+" field empty"); return true; }else{ return false; } }
检查用户是否在数据库中使用php
<?php $con = mysqli_connect("localhost","root","1234","users"); if(mysqli_connect_errno()){ echo "Couldn't connect ".mysqli_connect_error(); }else{ //echo "connection successful <br />"; } $uname_tb = $_POST['username']; $pass_tb = $_POST['password']; $query ="SELECT * FROM user"; $result = mysqli_query($con,$query); while($row = mysqli_fetch_array($result)){ if(($row['username'] == $uname_tb) && ($row['password'] == $pass_tb)){ echo "Login Successful"; header('Location: dashbord.php'); exit(); }else{ echo "You are not in our database".mysqli_connect_error(); } } mysqli_close($con); ?>