phpセッション変数に保存されている古いパスワードと新しいパスワードを比較する方法を教えてください。PHPセッション変数に保存されているパスワードと、jsを使用して入力した新しいパスワードとを比較します
私は次のコードを使用しています。このコードの結果は、常に正しいパスワードを入力したときにループが機能していない場合、「パスワードは正しく入力されていません。
<!DOCTYPE html>
<html lang="en">
<div id="dom-target" style="display: none;">
<?php
session_start();
$oldPsassword=$_SESSION['storpass'];
echo htmlspecialchars($oldPsassword);
?>
</div>
<form name="myForm2" method ="post" action = "index-login.php" onsubmit="return PasswordMatch()">
<div class="form-group">
<label>Old Password</label>
<input type="password" name = "op" placeholder="old Password" id = "opass" class="form-control" >
</div>
</form>
</html>
はJavaScript
function PasswordMatch() {
var div = document.getElementById("dom-target");
var oldPass =div.textContent;
var oldPass1 =document.getElementById("op").value;
if (oldPass1 == oldPass) {
alert("password entered is correct");
}
else
{
alert("password entered is not correct");
return false;
}
}
"Q:なぜoldPass1!= oldPass?"、 "A:内部は何かを見てみましょう:console.log(oldPass1、oldPass);" – Federkun
HTMLページに古いパスワードを出力しないでください。プレーンテキストとして保存するべきではありません。この確認はajax経由で行います。 – Phiter
htmlspecialchars()を使わずに試しましたか?これは、2つのパスワードを比較するときに望ましくないエンコーディングを引き起こしているようです:http://www.w3schools.com/php/func_string_htmlspecialchars.asp –