2010-05-26 3 views
0
<?php 
if (!isset($_SESSION['loginAdmin']) || ($_SESSION['loginAdmin'] == '')) { 
    header ("Location: loginam.php"); 
} else { 
    include('head2.php'); 
} 


    if (!isset($_SESSION['login']) || ($_SESSION['login'] == '')) { 
    header ("Location: login.php"); 
} else { 
    include('head3.php'); 
} 

?> 

Я действительно застрял в этой проблеме. То, что я хочу сделать, - это перенаправить пользователя на другую страницу на введенную информацию.нужна помощь по php, если заявление

Моя проблема:

если это утверждение верно:

else { 
     include('head3.php'); 
    } 

Это можно было бы также быть правдой:

if (!isset($_SESSION['loginAdmin']) || ($_SESSION['loginAdmin'] == '')) { 
     header ("Location: loginam.php"); 
    } 

ведущий меня на странице входа ли я админ или просто обычный пользователь. Можно ли два Отделить два, если заявления, так что, если это правда:

else { 
    include('head3.php'); 
} 

Тогда это утверждение не должно мешать и перенаправить меня обратно на страницу входа:

if (!isset($_SESSION['loginAdmin']) || ($_SESSION['loginAdmin'] == '')) { 
    header ("Location: loginam.php"); 
} 
+0

Предполагаете, вы начали сеанс сразу после открытия тега, верно? – Babiker

+0

yup прямо после открытия есть что-то не так с этим? – user225269

ответ

1

Что вы можете сделать, это .. есть переменная UserType ...

$_SESSION['usertype'] = 1 //for admin 
$_SESSION['usertype'] = 2 //for regular user 

Теперь, в зависимости от типа пользователя, вы можете перенаправить пользователя.

if($_SESSION['usertype'] == 1) 
header ("Location: admin.php"); 
else if($_SESSION['usertype'] == 2) 
header ("Location: user.php"); 
2

Всегда использовать exit после отправки Location: заголовка

Совет: (!isset($var || $var == '') может быть сокращен до empty($var)

+0

Я получаю два заголовка, когда я это делаю. – user225269

+0

@ user225269 Итак, вот почему я сказал вам использовать exit. Чтобы предотвратить получение 2 заголовков. В любом случае, независимо от того, что вы получаете, вы ** должны использовать exit после местоположения. И вам лучше начать понимать это. –

Смежные вопросы