当サイトはQ&A掲示板(コミュニティ)の窓口を共有して下さるサイト様を募集しています。
[Q&A掲示板] 共有サイト様募集!# トップページ sub Top { &Header(); print <<E_O_M; ・<a href="test.cgi?m=Entry">新規登録</a><br> <br> <form action="test.cgi" method="POST"> ID<input type="text" name="id"> PASS<input type="password" name="pass"> <input type="submit" value="ログイン"> <input type="hidden" name="m" value="Login"> </form> <br> <form action="test.cgi" method="POST"> <input type="password" name="pass"> <input type="submit" value="管理"> <input type="hidden" name="m" value="Admin"> </form> </body> </html> E_O_M } # 変更フォーム sub Login { &Get_User(); &Error('指定されたユーザーは存在しません!') if(!exists($UserData{$in{'id'}})); &Error('パスワードが一致しません!') if($in{'pass'} ne $UserData{$in{'id'}}[1]); if(!$in{'f'}) { # 変更フォームの表示 &Header(); print <<E_O_M; <form action="test.cgi" method="POST"> パスワード<input type="password" name="newpass"><br> 名前<input type="text" name="name"><br> メールアドレス<input type="text" name="mail"><br> <input type="hidden" name="pass" value="$in{'pass'}"> <input type="hidden" name="id" value="$in{'id'}"> <input type="hidden" name="f" value="1"> <input type="hidden" name="m" value="Login"> <input type="submit" value="登録"> </form> E_O_M } else { # 変更処理 # パスワードチェック $ERROR .= 'パスワードが入力させていません!<br>' unless($in{'newpass'}); $ERROR .= 'パスワードには半角英数字以外は使用できません!<br>' if($in{'newpass'} =~ /[^0-9a-zA-Z]/); $ERROR .= 'パスワードが長すぎます' if(length($in{'newpass'}) > 20); # 名前チェック $ERROR .= '名前が入力されていません!<br>' unless($in{'name'}); $ERROR .= '名前が長すぎます!<br>' if(length($in{'name'}) > 40); # メールアドレスチェック $ERROR .= 'メールアドレスが不正です! <br>' if($in{'mail'} !~ /^[\w\.\-]+\@[\w\.\-]+\.[a-zA-Z]{2,6}$/); $ERROR .= 'メールアドレスが長すぎます!<br>' if(length($in{'mail'}) > 100); # 変更の適用 $UserData{$in{'id'}}[1] = $in{'newpass'}; $UserData{$in{'id'}}[2] = $in{'name'}; $UserData{$in{'id'}}[3] = $in{'mail'}; &Set_User(); &Header(); print <<E_O_M; 変更が完了しました! E_O_M } }