我有一個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