Функция PHP die

Как я могу использовать функцию php die, чтобы остановить загрузку только определенных файлов? Я понимаю, что это, вероятно, не то же самое, что die, но как я могу остановить загрузку только определенных div? Поэтому я хочу, чтобы Learn "col" и "col last" загружались не для загрузки, а для панели div id. Кроме того, как сделать так, чтобы тег H2 в операторе if не применялся к таблице в операторе 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>

5 ответов

Решение

Ты не можешь 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 ?>

В else часть просто отобразить любой текст, который вы хотите отобразить с помощью echo() а также exit, Вам не нужно die(),

Пожалуйста, не умирай! Не оставляйте надежду - всегда есть альтернатива.

Попробуйте вывести свою разметку из условных выражений.

"Поэтому я хочу, чтобы выучить" col "и" col last "не загружать". Выделите эти строки с помощью мыши. Нажмите клавишу удаления:)

Если вы не хотите, чтобы они отображались, используйте if else заявление. Это будет смотреть на if часть первая, если это правда, он выполняет код, если это ложно, он будет перемещен в else Заявление и попробуйте это.

Используйте блок if:

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

"умереть" - это полная остановка; Есть способы перехватить это, но не удобные способы. В немного другой ситуации return может делать то, что вам нужно (так как он выходит только из текущей функции или файла).

Другие вопросы по тегам