
説明下手かもしれませんが、MD5化したパスワードを再度パスワード認証する方法で躓いてしまいました。
test.php
$passwd = 'admin';
$passwd = md5($passwd);
if(!isset($password)){$password = md5($_post('password')) ;}
if($password == $passwd)){
//ファイルへ書き込み、ファイル一覧表示する処理(コード省略)
//★★ 処理した後に、この下でコードでパスワード認証されたPOST送信ボタンを出力 ★★
echo "<td>
<form action=$PHP_SELF method=post>
<input type=hidden name=password value=$passwd>
<input type=submit value=送信>
</form>";
}
問題は
(1)$passwdはMD5で暗号化されている
(2)POST送信された$passwdはMD5で暗号化されたものが、md5($_post('password')で更にMD5化されて認証エラーになる。
なのでフォームボタン(POST送信)を使用し、自身のスクリプトに認証されるような処理を行いたいのですが、
いい方法をアドバイス下さい。
echo "<td>
<form action=$PHP_SELF method=post>
<input type=hidden name=password value=$passwd>
<input type=submit value=送信>
</form>";
No.1ベストアンサー
- 回答日時:
やりたい事は何となくわかりますが、、、。
まず、この構文自体に疑問があるのですが、これってちゃんと動作していますか?
×$_post('password')←スーパーグローバル変数は大文字で、配列のキーは$_POST['password']です。
if(!isset($password)){←register_globalsがonだったらわかるのですが、もしoffだったら$passwordの出所が不明(通常はoffだから)
if($password == $passwd)){
これが、falseだったら、どんな処理(表示?)になるのか、、、つまり、最初の表示が何なのかが不明?
if($password == $passwd)){
パーレンが多いです。確実に構文エラーになります。
本題に入りますが、
md5の暗号化後を再度認証させるには、いろいろ方法はありますが、
例えば、hiddenに値を指定し(何でもいい)、その値があった場合のみ、md5の処理をしなければいいだけです。
例)
echo "<td>
<form action=$PHP_SELF method=post>
<input type=hidden name=password value=$passwd>
hiddenを指定→<input type=hidden name='re_ninshou value=1>
<input type=submit value=送信>
</form>";
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
composerをインストールしたい...
-
HTML PHP ラジオボタンのイベント
-
php でqiitaのサイトにあったフ...
-
【初心者】XAMPPのapacheの(恐...
-
phpのクラスメソッドの定義が長...
-
ファイルアップロードの上限を...
-
$_SESSIONについて教えて下さい。
-
Postgresの特定のカラムからス...
-
画像ファイルの名前をそのままU...
-
PHP8でWarning:Undefined varia...
-
phpの問い合わせフォームを作っ...
-
marginの値でマイナス値を設定...
-
submitで思うようにページが遷...
-
SplFileObject を利用したとき...
-
PHPの勉強してます。 配列のと...
-
BASIC認証のフォームをデザイン...
-
アップロードファイルを表示す...
-
複数のパソコンの中の1つのパソ...
-
返信機能のツリー構造の深さを...
-
PHPについて。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HTMLで前の画面に戻る時、入力...
-
検索時の選択内容を保持する方法
-
DBの値をチェックボックスに反...
-
$_SESSIONについて教えて下さい。
-
PHPで、ボタンを押すと同じペー...
-
PHP ボタンが押されたら処理を...
-
<input type="hidden" >で配列...
-
アンケートフォームの作り方
-
入力した部分を表示させたまま...
-
画面が更新されてもチェックボ...
-
ラジオボタンをsessionで使いたい
-
チェックボックスによる検索
-
PHPで画像の渡しが上手く行きま...
-
同じページでフォームデータを...
-
POSTをボタンではなくリンク等...
-
配列をhiddenで
-
HTMLのvalue値を取得したい。
-
パラメーターを隠す
-
選んだ数字だけ繰り返す
-
PHPで画像データーのアップロー...
おすすめ情報