ここにあるコードに従って、安全なログインページを作成しました。問題は、非表示の入力要素を作成できないことです。
function formhash(form, password) {
// Create a new element input, this will be out hashed password field.
var p = document.createElement("input");
// Add the new element to our form.
form.appendChild(p);
p.name = "p";
p.type = "hidden"
p.value = hex_sha512(password.value);
// Make sure the plaintext password doesn't get sent.
password.value = "";
// Finally submit the form.
form.submit();
}
私はそれがIEでのみ機能し、geckoでは機能しないと言っています。これは本当ですか、それとも何かが足りないだけですか?
アップデート:
ログインページにJavaScriptを配置すると、フォームハッシュ関数が機能します。外部ファイルに移動すると、問題が再び発生します。
@asprin注意。php を配置する理由は、コードが php 実装に基づいていたためです。
@Henrikはそれを行います。ありがとう
@RenePotうん、それはprocess_login.phpページで呼び出されました
@MarkGarcia提案をありがとう。関数が宣言されていないことに注意してください
@WernerVesteråsよくわかりませんが、後で考えます。
@クエンティン提案をありがとう。そうします:D