1

PHP の die 関数を使用して、特定の div の読み込みのみを停止するにはどうすればよいですか? おそらくdieとまったく同じではないことは理解していますが、特定のdivのみが読み込まれないようにするにはどうすればよいですか? したがって、「col」と「col last」をロードするのではなく、div id バーをロードするように学習します。また、ifステートメントのH2タグがelseステートメントのテーブルに適用されないようにするにはどうすればよいですか?

<html>
<body>



<div id="header">
<div id="site">
    <h1><a href="#">site</a></h1>
    </div>

   <div id="menuholder">
    <ul id="menu">
        <li><a href="index.html">Home</a></li>
        <li class="active"><a href="about.php">about application</a></li>
        <li><a href="#">register</a></li>
        <li><a href="#">contact</a></li>
    </ul>
    </div>


</div>

<div id="teaser">
    <div class="wrap">
        <div id="image"></div>
        <div class="box">

<?php
session_start ();
if (isset($_SESSION['username']))
echo "<h2>Welcome, ".$_SESSION['username']."!</h2>";
else
die("You must be logged in to view this page. 
Register to gain access to learn more about the application.    
<form action='login.php' method='POST'>
<table>
<tr><td>Username: </td><td><input type='text' name='username'/></td><td>Password: </td> <td>              <input type='password' name='password'/></td> <td><input type='submit'  name='submit' value='Login'/></td></tr>
</table>
</form>
");

?>


            <p>Information about the application would go here</p>

        </div>

    </div>
</div>

<div id="bar">
    <div class="wrap">

    </div>
</div>



<div class="wrap">
    <div class="col">
        <h3>Learn <span class="red">More</span></h3>
        <p>More info </p>
    </div>
    <div class="col">
        <h3>User <span class="red">Statistics</span></h3>
        <p>More info</p>
    </div>
    <div class="col last">
        <h3>About <span class="red">Phapsy</span></h3>
        <p>More info</p>

    </div>
</div>

<div id="footer">
    <p class="right">Contact: </p>
</div>

4

5 に答える 5

4

できません。die()これ以上処理を停止するよう PHP に指示します。

ただし、これは機能します。

<?php
session_start ();
if (isset($_SESSION['username'])) {
    echo "<h2>Welcome, ".$_SESSION['username']."!</h2>";
    $auth = true;
} else {
    $auth = false; // Show the following HTML
?>
You must be logged in to view this page. 
Register to gain access to learn more about the application.    
<form action='login.php' method='POST'>
<table>
<tr><td>Username: </td><td><input type='text' name='username'/></td><td>Password: </td> <td>              <input type='password' name='password'/></td> <td><input type='submit'  name='submit' value='Login'/></td></tr>
</table>
</form>
<?php } // End ?>

あとは別のところ...

<?php if ( $auth == true ) { // Display this HTML only if authenticated ?>
    <div class="col last">
        <h3>About <span class="red">Phapsy</span></h3>
        <p>More info</p>

    </div>
<?php } // End ?>
于 2012-05-08T22:28:00.707 に答える
1

その部分には、とelseを使用して表示したいテキストを表示するだけです。する必要はありません。echo()exitdie()

于 2012-05-08T22:27:59.193 に答える
0

if ブロックを使用します。

<?php if($stuff): ?>
    <div></div>
<?php endif; ?>

「死ぬ」はピリオドです。それを傍受する方法はありますが、便利な方法ではありません。少し異なる状況では、「return」が必要なことを実行する場合があります (現在の関数またはファイルのみを終了するため)。

于 2012-05-08T22:29:19.027 に答える
0

「だから私は「col」と「col last」をロードしないようにしたい」。マウスでそれらの行を強調表示します。削除キーを押してください:)

それらを表示したくない場合は、if elseステートメントを使用します。最初にその部分を見て、iftrue の場合はコードを実行し、false の場合はelseステートメントに移動してそれを試します。

于 2012-05-08T22:30:07.103 に答える
0

死なないでください!希望を捨てないでください。代替手段は常にあります。

条件ステートメント内からマークアップを出力してみてください。

于 2012-05-08T22:30:57.683 に答える