-1

HTML ファイルを使用せずに、1 つの PHP ファイルでログインしようとしています。そのため、ログインに成功したら、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 コードを再び非表示にすることはありません。

HTML 出力を再度非表示にする方法はありますか?

4

3 に答える 3

0

もちろん、それはすでに実行されていると思うので、HTMLCode を再度非表示にすることはありません。

正しい

HTML 出力を再度非表示にする方法はありますか?

テストを移動して、出力したい (したくない) HTML の前に表示されるようにします。

于 2012-09-25T08:34:37.560 に答える
0

短い: HTML を PHP の下に置きます。

長い: まともなログイン システムを使用します。セッションを使用します。

于 2012-09-25T08:35:04.297 に答える
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 } ?>
于 2012-09-25T08:36:12.530 に答える