<?php // var_dump($_GET['action']); var_dump($_POST); if ($_GET['action'] == 'login') { if($_POST['name']=='admin' && $_POST['pwd']==123456){ setcookie('username',$_POST['name'],time()+3600*24); header('Location:index.php'); } else { echo '<script> alert("您输入了错误的用户名或密码!");</script>'; } } elseif ($_GET['action']=='logout') { setcookie('name','',time()-3600);//注销cookie } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>用户登录</title> </head> <body> <form action="<?php echo $_SERVER['PHP_SELF']; ?>?action=login" method="post"> <fieldset> <legend>用户登陆:</legend> <label for="name">用户名:</label> <input type="text" name="name" id="name"/> <label for="pwd">密码:</label> <input type="password" name="pwd" id="pwd"/> <input type="submit" value="提交"> </fieldset> </form> </body> </html>
admin 123 입력 시 다음과 같이 표시됩니다.
admin 123456 입력 시 오류는 다음과 같습니다.
잘못된 비밀번호를 전달하면 입력될 수 있기 때문에 제가 이해한 바는 다음과 같습니다. 제출 클릭 시 작업 값 1단계 if 문 이후에 판단하세요. 제출 시에도 올바른 사용자 이름과 비밀번호가 1단계 if 문에 작업 값을 전달할 수 없는 이유는 무엇인가요?
해결됨