2014-11-18 5 views
0

변경하려고하는 일부 코드에 문제가 있습니다. 코드에서 뻔뻔한 보안 문제를 무시하고,이 연습에서는 데이터베이스를 사용하지 않습니다.잘못된 자격 증명을 입력하면 로그인 화면을 다시로드합니다.

기본적으로 사용자가 잘못된 사용자/비밀번호를 입력하면 잘못된 자격 증명 오류 메시지가 표시됩니다. 나는 이것을하는 방법을 이해할 수 없다. 로그인 페이지로 다시 리디렉션 할 수 있지만 해당 페이지에 메시지가 나타나지 않습니다. 다음과 같이

코드는 다음과 같습니다 login.php에

양식을

<form action="login2.php" method="post"> 

     <p>Username: <input type="text" name="username" /></p> 

     <p>Password: <input type="password" name="password" /></p> 

     <p><input type="submit" value="Login" name ="sub" /> </p> 

</form> 

나는이 질문에 솔루션을 검토 한

<?php 

    session_start(); 

// Checks the input from login.php 

    if(isset($_POST['sub'])){ 

     $username = $_POST['username']; $password = $_POST['password']; 

    if($username === 'test' && $password === 'pass'){ 

     $_SESSION['userid'] = true; header("Location: index.php"); die(); 

    } 

     else 

    if($username !== 'admin' or $password !== 'password')$userError = 'Invalid credentials'; 

    { 

     echo "Wrong username or password"; 

      $_SESSION["loginerror"] = 1; 

     header("Location:login.php"); 

    } 

}  

// Allows ANY input to trigger access to the main site 
?> 

login2.php에 PHP , 그들은 작동하지 않는 것 같습니다 : Incorrect username/password message and redirect

답변

0

양식 맨 위에 텍스트 입력란을 추가하십시오.

<p <?php if ($_SESSION["loginerror"] == 1){echo 'style="display: none;";} ?> > Invalid user/login</p> 
+0

테스트 해 보셨습니까? 'Parse error : syntax error, unexpected '>'/path/to/file.php in line 1' –

+0

다시 시도하십시오. PHP 코드를 닫지 않았습니다. –

+0

나는 이것을 시도했지만 처음 페이지를로드 할 때도 오류 메시지가 계속 표시됩니다. – AnjunaTom

관련 문제