私はHTMLログインフォームを持っています。ユーザーがログインすると、そのユーザーを別のページにリダイレクトし、いくつかのDOMを変更します。このリダイレクトはPHPユーザーとパスワードを確認するスクリプト。 私はこれを持っている: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