• 締切済み

ログイン パスワード変更のプログラム

ログインのプログラムをこんな感じで書いたのですが、 パスワードを変更できるようにするには、どういったプログラムを 追加すればいいのでしょうか? <? $fl='<name>xxx</name><pass>abcde</pass><name>yyy</name><pass>abcde</pass><name>zzz</name><pass>abcde</pass><name>ddd</name><pass>abcde</pass><name>guest</name><pass>guest</pass>';//ファイルから読み込んだ文字列 $name=$_POST['username'];//名前 if(ereg('<name>'.$name.'</name><pass>[a-z0-9]+</pass>',$fl,$a)){ $pass=ereg_replace('[^ ]+<pass>','',$a[0]); $pass=ereg_replace('</pass>','',$pass); if($pass==$_POST['pass']){ echo 'ログインしました。'; }else{ echo 'パスワードが違います。'; } }else{ echo '登録されていません。'; } ?> <form method="POST"> name<input name="username"><br> pass<input type="password" name="pass"><br> <input type="submit" value="ログイン"> </form> 宜しくお願い致します。

みんなの回答

  • memphis
  • ベストアンサー率40% (975/2395)
回答No.2

IDとパスワードを比較して「ログイン」としている所から、新しいパスワードの入力を行い、古いパスワードを置き換えればいいだけです。 上記のはサンプルだと思いますが、実際に作成する場合は IDが「<name>」の人はログインできない等、見直すところは多いです。

add0804
質問者

補足

>IDとパスワードを比較して「ログイン」としている所から、新しいパスワードの入力を行い、古いパスワードを置き換えればいいだけです。 というのは、どういったプログラムを組めばいいのですか? また、「IDが「<name>」の人はログインできない」とはどういうことですか?お願いします。

  • gentaro
  • ベストアンサー率47% (105/221)
回答No.1

ID,パスワードは別ファイルにしたほうがいいのではないでしょうか? そうすればパスワードの変更はそのファイルの更新だけです。 パスワードファイルは推測されない名前にするか、可能ならブラウザ でアクセスできる領域外に置くのがベストです。

add0804
質問者

補足

>ID,パスワードは別ファイルにしたほうがいいのではないでしょうか? 別ファイルにした場合、IDとパスワードの一致はどのように 確認したらいいのですか? また、ファイルの更新はどのようなプログラムですか? お願いします。