我有一个HTML登录表单,当用户登录时,我想将该用户重定向到另一个页面并更改其上的一些DOM。此重定向是通过PHP验证用户和密码的脚本。 我有这样的:如何重定向到同一页面,并更改DOM的
<?php
set_time_limit(0);
header('content-type: text/html; charset=utf-8');
header("access-control-allow-origin: *");
include 'connect.php';
$pass= $_POST['pass'];
$sql = "SELECT password FROM users WHERE password ='$pass'";
$result = mysql_query($sql);
$row=mysql_fetch_array($result);
if($row[0]!='') {
$query = mysql_query("SELECT user FROM users WHERE password ='$pass'");
$user = mysql_fetch_array($query, MYSQL_ASSOC);
$user=$user["user"];
echo "<script>window.location = 'http://localhost/public_html/as/index.php?pass=$pass';document.getElementById('log').innerHTML = 'LOGGED WITH: $user';$('#login-form').slideUp();document.getElementById('logout').style.display='';$('#log').unbind('click');</script>";
} else {
echo "<script>document.getElementById('text').value = ''; document.getElementById('text').placeholder = 'Type a valid key';</script>";
}
?>
这仅仅是学习如何处理登录表单,所以不介意有关安全的事情。 我的问题是在这里:
echo "<script>window.location = 'http://localhost/public_html/as/index.php?pass=$pass';document.getElementById('log').innerHTML = 'LOGGED WITH: $user';$('#login-form').slideUp();document.getElementById('logout').style.display='';$('#log').unbind('click');</script>";
此代码重定向到window.location的网页,但不改变其他DOM在HTML页面。
我该如何解决这个问题? 在此先感谢!
JavaScript只能更改它所运行的页面的DOM。如果您想要更改其他页面的DOM,请在执行重定向或使用会话Cookie时传递URL中的相关数据。 – Chris
“这只是为了学习如何处理登录表单,所以不要介意安全问题。”但是你需要了解安全性!如果我的密码恰好是“OR 1 = 1; - ”你的时间不好! – Dale
我的问题是:如何在登录后重定向到同一页面时更改某些DOM? – SLFl