안녕하세요, 일부 코드 문제가 있습니다. 선생님조차도 나를 도울 수 없으며, 나는 어디로 가야할지 모른다. foreach 루프가 활성화되고 비밀번호와 사용자 이름이 하드 코딩 된 문자열과 동일 할 경우 loginerror.php로 리디렉션됩니다. 헤더 ("Location : loginerror.php")를 제거하면 정상적으로 작동합니다. 새 페이지를로드해야하는 경우에도 내 코드의 마지막 줄이 여전히 활성화되는 이유는 무엇입니까?php가 헤더와 함께 전송되지 않음
<?php session_start(); ?>
<html>
<header></header>
<body>
<form action="login.php" Method="post">
Username: <input type="text" name="Username"> </br></br>
Password: <input type="password" name="Password"> </br></br>
<input type="submit" value="Login"></br></br>
</form>
<?php
$username=$_POST["Username"];
$password=$_POST["Password"];
if($username == NULL){print("Enter a Username please");}
else {
$users= array
(
"Bourne"=>"postcode",
"Unidan"=>"pincode",
"yoda"=>"sith"
);
foreach($users as $user=>$password_value)
{
if(($user==$username)&&($password_value==$password))
{
$_SESSION['login?']=1;
header("Location: calculation.php");
}}
$_SESSION['login?']=0;
header("Location: loginerror.php");
}
?>
</body>
</html>
"선생님조차도 도움이 안됩니다."- 더 나은 선생을 찾는 것이 좋습니다. – David
선생님은 단서가 없습니다 ... header() 코드에 도달하기 전에 전체 HTML 문서를 출력했기 때문에 header() 호출이 작동하지 않습니다. –
가르 칠 수없는 사람들. –