2017-01-10 4 views
0

У меня есть файл и функция, файл с именем: «try.php» с скриптом вроде этого:Как я могу перенаправить мой код с тем же файлом?

<?php 
function is_logged_in(){ 
    if(empty($_SESSION['authid'])){ 
     header("location: ./try.php?act=login"); 
    } 
} 

is_logged_in(); 
if(isset($_GET['act'])){ 
    // login form here 
} 

У меня есть некоторые ошибки «Страница не перенаправив должным образом». так как я могу перенаправить мой код в тот же файл?

+3

Это условие никогда не изменяется: 'if (empty ($ _ SESSION ['authid']))' Итак, вы создали бесконечный цикл переадресации. – David

ответ

0

Вы должны убедиться, что вы не создадите цикл переадресации, например. путем проверки параметра act.

<?php 
function is_logged_in(){ 
    if(empty($_SESSION['authid']) && (!isset($_GET['act']) || $_GET['act'] !== 'login')) { 
     header("location: ./try.php?act=login"); 
    } 
} 

is_logged_in(); 
if(isset($_GET['act'])){ 
    // login form here 
} 
+1

описание товара wow, решался. Спасибо за спасенный мой чувак. –

+0

@MuhFadlySangadji приятно слышать. Теперь вы можете продвигать и отмечать ответ как правильно :) –

+0

Хорошо, спасибо за козырь. –