Php 在成功登录ajax时打开新窗口
在下面的代码中,成功登录后,我将尝试打开admin.htm。使用AJAX将内容加载到同一页面中,如何在新窗口中打开它,但在出现错误时在原始窗口中保留任何错误消息 login.htmPhp 在成功登录ajax时打开新窗口,php,javascript,html,Php,Javascript,Html,在下面的代码中,成功登录后,我将尝试打开admin.htm。使用AJAX将内容加载到同一页面中,如何在新窗口中打开它,但在出现错误时在原始窗口中保留任何错误消息 login.htm <form> Username:<input type="text" name= "username" size="15" /> Password:<input type="password" name= "passwrd" size="15" />
<form>
Username:<input type="text" name= "username" size="15" />
Password:<input type="password" name= "passwrd" size="15" />
<input name="submit" type = "button" onClick = "getdata('login.php','display',username.value,passwrd.value)" value = "Login" />
</form>
<div id="display"></div>
表单故意使用AJAX在您所在的页面上显示结果 要在新页面中打开结果,请删除onclick和脚本,并给出一个目标:
<form action="login.php" target="_blank" method="post">
Username:<input type="text" name= "username" size="15" />
Password:<input type="password" name= "passwrd" size="15" />
<input type="submit" value = "Login" />
</form>
用户名:
密码:
如果您只想在提交后看不到表单,请将表单包装在display div中:
<div id="display">
<form>.....
</form>
</div>
.....
更新:
to get the error message into the page, do
if (xhr.readyState == 4 && xhr.status == 200) {
var text = xhr.responseText;
if (text.indexOf("You must") == 0) obj.innerHTML = text;
else window.open(text,"_blank")
}
<?php
$usernam = $_POST["username"];
$pwd = $_POST["password"];
if (empty($usernam) || empty($pwd)) {
echo "You must enter both username and password to login.";
} else {
echo 'admin.htm';
}
?>
要将错误消息输入页面,请执行以下操作
如果(xhr.readyState==4&&xhr.status==200){
var text=xhr.responseText;
如果(text.indexOf(“您必须”)==0)obj.innerHTML=text;
else窗口。打开(文本“_blank”)
}
编辑了您的标签。PHP与windows无关。这是服务器端语言,你的缩进在哭泣——不,尖叫——需要一些爱和关注。想试一下吗?@Col:我想php
是我们想从这个问题中去掉的东西。Login.php完全是一个骗局,OP似乎不明白HTML、Javascript和php是不同的。@jisa:你提到新窗口的代码在哪里?您需要阻止原始表单提交继续。这个问题更适合聊天室。为什么你对noobs这么不友好?但它会在新窗口中显示消息(如果任何字段为空)和admin.htm,但我需要在表单下显示错误消息,但在新窗口中显示admin.htm
to get the error message into the page, do
if (xhr.readyState == 4 && xhr.status == 200) {
var text = xhr.responseText;
if (text.indexOf("You must") == 0) obj.innerHTML = text;
else window.open(text,"_blank")
}
<?php
$usernam = $_POST["username"];
$pwd = $_POST["password"];
if (empty($usernam) || empty($pwd)) {
echo "You must enter both username and password to login.";
} else {
echo 'admin.htm';
}
?>