2012-09-25 2 views
-1

HTML 파일없이 하나의 PHP 파일로 로그인을 시도합니다. 그래서 성공적으로 로그인하면 HTML 포스트 버튼과 텍스트 박스를 숨기고 싶습니다. 로그인 후 HTML 요소 숨기기

다음은 내 코드입니다 .. : 다시 HTML 코드를 숨기지 않습니다 물론

<?php 

    $showHTML = true; 

    if ($showHTML) { ?> 

    <h1> Bitte einloggen! </h1> 
    <form action="test2.php" method="POST"> 
    <input name="user" type="test"><br> 
    <input name="pass" type="password"><br> 
    <input type="submit" value"Login"> 
    </form> 

    <?php 

    } 

    if ($_SERVER['REQUEST_METHOD'] == 'POST') { 

     if ($_POST['user'] == "test" && $_POST['pass'] == "a123") { 
      echo "user = test"; 
      $showHTML = false; 
     } 
    } 

, 그 이미 실행 내가 생각하기 때문이다.

HTML 출력을 다시 숨길 수있는 방법이 있습니까?

+0

당신은 * *이 자바 스크립트를 사용할 수 –

+1

당신이 ...... 이것을'자바 스크립트/jquery'을 사용할 수 있습니다, 그것은 더 복잡하고 덜 신뢰할 수있는 방법이 될 것입니다. – Quentin

답변

0

물론 HTML 코드를 숨기지 않습니다. 왜냐하면 이미 실행 된 것으로 생각하기 때문입니다. 올바른

다시 HTML 출력을 숨길 수있는 방법이 있나요? 당신이 (안) 출력하고자 되는 HTML 전에 나타나도록

테스트를 이동

.

0

짧음 : HTML을 PHP로 저장하십시오.

길게 : 적절한 로그인 시스템을 사용하십시오. 세션을 사용하십시오.

+0

당신은 ... 물론 당신 말이 맞아. 그건 효과가 있어요. 나는 그것을 위해서만 필요하기 때문에 세션을 사용하지 않을 것이다. :) 감사합니다. – Aurus

0

서버 측 변수를 사용하여 이미 렌더링 된 HTML 컨텐트를 제어 할 수 없습니다.

<?php 
if ($_SERVER['REQUEST_METHOD'] == 'POST') { 
    if ($_POST['user'] == "test" && $_POST['pass'] == "a123") { 
     echo "user = test"; 
  } 
} else { ?> 

<h1> Bitte einloggen! </h1> 
<form action="test2.php" method="POST"> 
<input name="user" type="test"><br> 
<input name="pass" type="password"><br> 
<input type="submit" value"Login"> 
</form> 

<?php } ?>