PHP Warning: Cannot modify header information

Din index.php incarc toate paginile site-ului meu
-incarc fisierele din /includes/
-incarc css-urile, js-urile
-incarc meniul
-paginile(pagina ceruta de vizitator)
-subsolul paginii

In unele pagini nu vreau sa ofer acces vizitatorilor care nu sunt logati si vreau sa ii redirectionez catre pagina /login


<?php if(isUserLoggedIn($uid,$conn)=="false") header('Location: ../login'); ?>

Acest lucru nu functioneaza daca incarc meniul inainte de

<?php
if(isUserLoggedIn($uid,$conn)=="false")
header('Location: ../login');
?>

Am facut o pagina test.php si am introdus prima data meniul si apoi header

<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
   <!-- Topbar Search -->
   <form class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
      <div class="input-group">
         <input type="text" class="form-control bg-light border-0 small" placeholder="Search for...">
         <div class="input-group-append"> <button class="btn btn-primary" type="button"> <i class="fa fa-search fa-sm"></i> </button> </div>
      </div>
   </form>
   <ul class="navbar-nav ml-auto">
      <li class="nav-item dropdown no-arrow d-sm-none">
         <a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <i class="fa fa-search fa-fw"></i> </a>
         <div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in" aria-labelledby="searchDropdown">
            <form class="form-inline mr-auto w-100 navbar-search">
               <div class="input-group">
                  <input type="text" class="form-control bg-light border-0 small" placeholder="Search for...">
                  <div class="input-group-append"> <button class="btn btn-primary" type="button"> <i class="fa fa-search fa-sm"></i> </button> </div>
               </div>
            </form>
         </div>
      </li>
      <li class="nav-item dropdown no-arrow mx-1">
         <a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <i class="fa fa-bell fa-fw"></i> <span class="badge badge-danger badge-counter">3+</span> </a>
         <div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in">
            <h6 class="dropdown-header"> Alerts Center </h6>
            <a class="dropdown-item d-flex align-items-center" href="#">
               <div class="mr-3">
                  <div class="icon-circle"> <i class="fa fa-file"></i> </div>
               </div>
               <div>
                  <div class="small text-gray-500">March 12, 2020</div>
                  <span class="font-weight-bold">related snippets sent</span>
               </div>
            </a>
            <a class="dropdown-item text-center small text-gray-500" href="#">Show All</a>
         </div>
      </li>
      <li class="nav-item dropdown no-arrow mx-1">
         <a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <i class="fa fa-envelope fa-fw"></i> <span class="badge badge-danger badge-counter">4</span> </a>
         <div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in" aria-labelledby="messagesDropdown">
            <h6 class="dropdown-header"> Messages </h6>
            <a class="dropdown-item d-flex align-items-center" href="#">
               <div class="dropdown-list-image mr-3">
                  <img class="rounded-circle" src="https://i.imgur.com/nUNhspp.jpg" alt="">
                  <div class="status-indicator bg-success"></div>
               </div>
               <div class="font-weight-bold">
                  <div class="text-truncate">Thanks for your answer!</div>
                  <div class="small text-gray-500">Andy flower · 8m</div>
               </div>
            </a>
            <a class="dropdown-item text-center small text-gray-500" href="#">Read all Messages</a>
         </div>
      </li>
      <div class="topbar-divider d-none d-sm-block"></div>
      <li class="nav-item dropdown no-arrow">
         <a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <span class="mr-2 d-none d-lg-inline text-gray-600 small">Valerie Luna</span> <img class="img-profile rounded-circle" src="https://i.imgur.com/uIgDDDd.jpg"> </a>
         <div class="dropdown-menu dropdown-menu-right shadow animated--grow-in" aria-labelledby="userDropdown">
            <a class="dropdown-item" href="#"> <i class="fa fa-user fa-sm fa-fw mr-2 text-gray-400"></i> Profile </a> <a class="dropdown-item" href="#"> <i class="fa fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i> Settings </a> <a class="dropdown-item" href="#"> <i class="fa fa-list fa-sm fa-fw mr-2 text-gray-400"></i> Activity Log </a>
            <div class="dropdown-divider"></div>
            <a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal"> <i class="fa fa-sign-out fa-sm fa-fw mr-2 text-gray-400"></i> Logout </a>
         </div>
      </li>
   </ul>
</nav>
<?php
header('Location: ../login');
exit;
?>

Am primit aceasta eroare
PHP Warning: Cannot modify header information - headers already sent by (output started at /public_html/test.php:1) in /public_html/test.php on line 66

Cum as putea rezolva aceasta problema?

Nu poti avea output înainte de a apela header.

Uită-te peste ce scrie aici

2 Likes

ti-as sugera sa scoti tagul de inchidere la php de pe ultima linie.

1 Like