NaaDa 0 Denunciar post Postado Janeiro 15, 2011 Boas, Estou aqui com uma duvida, bem simples, e que acho que é de fácil resultado, só que eu é que não estou a chegar la :( É o seguinte: Se nos fizemos o seguinte: ... if( $estatuto == admin ){ echo "Home | Serviços | Contacto | Admin"; exit; }else{ echo "Home | Serviços | Contacto"; exit; } ... //(não sei se funciona foi mesmo só para expor o meu problema xD) Caso eu não tenha posto a variável estatuto, isto iria dar erro, o mesmo ocorre se fosse uma sessão(que é o meu problema) ou um cookie. Tem de haver maneira de ver se essa variável existe ou não, simplesmente ir logo para o else :S Desde já obrigado :D Compartilhar este post Link para o post Compartilhar em outros sites
vasconcelloslf 0 Denunciar post Postado Janeiro 15, 2011 if(isset($variavel) && !empty($variavel)) { // logica segue } isset() --> função que verifica se a variavel está definida !empty() --> verifica se a variavel NAO (ponto de exclamacao) está vazia Espero ter ajudado ! Abracos. Compartilhar este post Link para o post Compartilhar em outros sites
NaaDa 0 Denunciar post Postado Janeiro 15, 2011 Acho que intendi, ve ai se é isso :) <?php if(isset($_SESSION['estatuto'])){ $estatuto = $_SESSION['estatuto']; if( $estatuto == admin ){ echo '<li><a href="contacto.php"><span class="l"></span><span class="r"> </span><span class="t">Administração </span></a></li>'; } } ?> Aqui nao ta dando, mas se isso estiver bem, quer dizer que tenho algo aqui no codigo que nao ta bem xD Compartilhar este post Link para o post Compartilhar em outros sites
vasconcelloslf 0 Denunciar post Postado Janeiro 15, 2011 Acho que intendi, ve ai se é isso :) <?php if(isset($_SESSION['estatuto'])){ $estatuto = $_SESSION['estatuto']; if( $estatuto == admin ){ echo '<li><a href="contacto.php"><span class="l"></span><span class="r"> </span><span class="t">Administração </span></a></li>'; } } ?> Aqui nao ta dando, mas se isso estiver bem, quer dizer que tenho algo aqui no codigo que nao ta bem xD Voce deve estar errando na sua segunda estrutura condicional. Tenta isso: if($estatuto == "admin") { // logica segue } Sem aspas voce estaria comparando $estatuto com algo que nao existe, porque admin nao é nem uma variavel aceita em PHP. Acho que voce se esqueceu de adicionar aspas para comparar strings. Tenta isso ! Abracos. Compartilhar este post Link para o post Compartilhar em outros sites
NaaDa 0 Denunciar post Postado Janeiro 15, 2011 Sim, reparei nisso :) Mesmo assim não estava a dar, e lembrei-me de uma coisa :| <?php session_start(); if(isset($_SESSION['estatuto'])){ if( $_SESSION['estatuto'] == "admin" ){ echo '<li><a href="contacto.php"><span class="l"></span><span class="r"> </span><span class="t">Administraçao </span></a></li>'; } } ?> Aparentemente dá, mas da um erro que é: Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\xampp\htdocs\1\index.php:16) in C:\xampp\htdocs\1\index.php on line 56 56 = session_start() Já pós no topo, de tudo mesmo, e nada, bem ta difícil por isto a dar xD Como tiro este erro ? :S Compartilhar este post Link para o post Compartilhar em outros sites
vasconcelloslf 0 Denunciar post Postado Janeiro 15, 2011 Esse erro geralmente acontece quando existe alguma outra informação sendo exibida na pagina antes da session comecar. Ela nao tem que ficar no topo de um bloco PHP qualquer, ela tem que ficar no topo do arquivo, logo nas primeiras linhas. Compartilhar este post Link para o post Compartilhar em outros sites
NaaDa 0 Denunciar post Postado Janeiro 15, 2011 Sim, estava apor depois do <body> bastou por na 1 linha mesmo, e já da :) Obrigado pela sua ajuda :D Você é muito bom ;) Obrigado mais uma vez ;) Compartilhar este post Link para o post Compartilhar em outros sites
vasconcelloslf 0 Denunciar post Postado Janeiro 15, 2011 De nada brother, e siga em frente aprendendo ! Compartilhar este post Link para o post Compartilhar em outros sites