• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

damaged

sessions e permissoes

9 mensagens neste tópico

boas pessoal tenho um novo grande problema

a minha pagina tem varios tipos de registo.

ou seja tem 3 tipos de permissoes.. users com permissao tipo 0, 1 e 2

e tenho a parte do php do post separado da pagina html.. ou seja.. tenho forms com action para uma pagina de post...

so que agora certas variaveis nao consigo ir busca las... por exemplo

tenho os sessions a bombar... do tipo:

if (isset($_SESSION("log")) { mostra a pagina }

else { pede para fazer o login }

no post do login tenho quando o login é correcto executa isto:

$_SESSION['log'] = 1;

session_register("log");

ate aki tudo bem... so que certas paginas so podem ser acedidas por certos users...

como é que faço para conseguir saber que tipo de user é (na pagina html, para depois poder mostrar o "echo" a dizer que nao tem permissoes para acede la???

espero ter me explicado bem...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

fazes a mesma coisa que com as sessions...


if (isset($_SESSION("log") == "0") { mostra a pagina ou include }

if (isset($_SESSION("log") == "1") { mostra a pagina ou include }

if (isset($_SESSION("log") == "2") { mostra a pagina ou include }

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

entao e na parte do post do login meto tipo o q???

$sql="SELECT * FROM login WHERE username = '$user' and password = '$pass'";

$result=mysql_query($sql);

$rows=mysql_fetch_array($result);

$user = $rows['username'];

$pass = $rows['password'];

$tipo = $rows['tipo'];

if(!empty($rows)){

if($rows['tipo'] = 0){

$_SESSION['log'] == 1;

session_register("views");

}

elseif($rows['tipo'] = 1){

$_SESSION['log'] == 2;

session_register("log");

e por ai a fora...?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

fazes a mesma coisa que com as sessions...


if (isset($_SESSION("log") == "0") { mostra a pagina ou include }

if (isset($_SESSION("log") == "1") { mostra a pagina ou include }

if (isset($_SESSION("log") == "2") { mostra a pagina ou include }

e nao funciona.. porque pede que eu feche com ")" antes do "==.."

e se eu fechar para nao dar erro.. ele nao faz a condiçao toda.... ou seja entra sempre no if... vendo apenas o "isset($_session['log'])"

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites


if (isset($_SESSION("log") == "0") { mostra a pagina ou include }

if (isset($_SESSION("log") == "1") { mostra a pagina ou include }

if (isset($_SESSION("log") == "2") { mostra a pagina ou include }


if ($_SESSION["log"] == "0") { mostra a pagina ou include }

if ($_SESSION["log"] == "1") { mostra a pagina ou include }

if ($_SESSION["log"] == "2") { mostra a pagina ou include }

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Para vários casos também gosto de usar o Switch e Case em vez de IF... não sei porquê  :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Para vários casos também gosto de usar o Switch e Case em vez de IF... não sei porquê  :D

So do I :D Mas neste caso era mesmo para corrigir o exemplo dele. :P
0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora