PHPユーザー登録ログインシス...ログイン

PHPユーザー登録ログインシステム登録処理ページ

登録処理ページ

フローチャートは次のとおりです:

第二版注册.png

詳細なコードは次のとおりです:コードの説明:

登録ページをクリックすると 登録時に、登録処理ページ

  • に入り、postメソッドで渡された$_POST["hidden"]が存在するかどうかを確認します。存在しない場合は、送信されたことを示すメッセージが表示されます。失敗し、登録インターフェイスに戻ります (存在する場合)。

  • 渡された値を取得し (trim() 関数を使用して空白文字をフィルターし、md5() 関数を使用してパスワードを暗号化します)、それが空であるかどうかを判断します。空の場合は、プロンプトが表示されます。空でない場合は、post メソッドによって渡された検証コード値がセッション内に以前に存在していた検証コード値と等しいかどうかを判断します。等しい場合は、認証コードが間違っていることを通知し、登録ページに戻ります。

  • 渡されたパスワードと確認されたパスワードが等しいかどうかを確認します。パスワードが一致しない場合は、続行します

  • データベースに接続し、作成したデータベースを選択し、文字セットを設定し、ユーザー名でデータベースをクエリします。結果があれば、ユーザー名が存在することを確認するプロンプトが表示され、登録ページに戻ります。結果がない場合は、データベース挿入ステートメントを実行してデータを挿入します (データベースに挿入されたフィールドには、登録に使用された登録時刻と IP 番号が追加されます)

  • 挿入ステートメントの戻り値を使用して、挿入が成功したかどうかを判断し、登録ページに戻って再度登録します。成功した場合は、登録が成功したことを示すメッセージが表示され、ログインページにジャンプします。

  • 次のセクション
<?php session_start(); //注册处理界面 regcheck.php if(isset($_POST["hidden"]) && $_POST["hidden"] == "hidden") { $user = trim($_POST["username"]);//trim()函数移除字符串两侧的空白字符 $psw = md5(trim($_POST["userpwd"])); $psw_confirm = md5(trim($_POST["confirm"])); $code = $_POST["code"]; if($user == "" || $psw == "" || $psw_confirm == "") { echo "<script>alert('请确认信息完整性!'); history.go(-1);</script>"; } else if($code != $_SESSION[' ver_code']){ echo "<script>alert('验证码不正确,请重新输入!'); history.go(-1);</script>"; } else { if($psw == $psw_confirm) { $conn = mysqli_connect("localhost","root","root"); //连接数据库,帐号密码为自己数据库的帐号密码 if(mysqli_errno($conn)){ echo mysqli_error($conn); exit; } mysqli_select_db($conn,"userdb"); //选择数据库 mysqli_set_charset($conn,'utf8'); //设定字符集 $sql = "select username from user where username = '$user'"; //SQL语句 $result = mysqli_query($conn,$sql); //执行SQL语句 $num = mysqli_num_rows($result); //统计执行结果影响的行数 if($num) //如果已经存在该用户 { echo "<script>alert('用户名已存在'); history.go(-1);</script>"; } else //不存在当前注册用户名称 { $ip=ip2long($_SERVER['REMOTE_ADDR']); // 把ip地址转换成整型 $time=time(); $sql_insert = "insert into `user` (`username`,`userpwd`,`createtime`,`createip`) values('" . $user . "','" . $psw ."','".$time."','".$ip."')"; $res_insert = mysqli_query($conn,$sql_insert); if($res_insert) { echo "<script>alert('注册成功!');window.location.href='login.php';</script>"; } else { echo "<script>alert('系统繁忙,请稍候!'); history.go(-1);</script>"; } } } else { echo "<script>alert('密码不一致!'); history.go(-1);</script>"; } } } else { echo "<script>alert('提交未成功!');</script>"; } ?>
コースウェア