VictorPHP 1 Denunciar post Postado Junho 17, 2015 Gente estou tentando fazer um select , pesquisando somente os usuários que estão no nível logado. Depois do WHERE aparece o tipo , mas nao faz o select geral. Grato por uma ajuda. Codigo do Perfil : <?php session_start(); $id = $_SESSION['nivel']; //OK $sql = "select * from usuario WHERE tipo_usuario = '$id'"; echo $sql; ?> Codigo do login : <?php if(isset($_POST['logar'])) { $sql = "select tipo_usuario from usuario where email = '".$_POST['email']."' and senha = '".$_POST['senha']."'"; $sql = mysqli_query($conexao,$sql); $result = mysqli_fetch_array($sql); //$result = mysqli_result($sql,0,'tipo_usuario'); if($result['tipo_usuario'] == 'USU') { $_SESSION['nivel'] = 'USUARIO'; header("Location: userindex.php"); } else if($result['tipo_usuario'] == 'MOD') { $_SESSION['nivel'] = 'MODERADOR'; header("Location: moderadoresindex.php"); } else if($result['tipo_usuario'] == 'ADM') { $_SESSION['nivel'] = 'ADMINISTRADOR'; header("Location: admindex.php"); } ELSE { echo "<script> alert('Usuario sem permissao!'); </script>"; } } ?> Tabela do usuario no mysql : CREATE TABLE usuario( id INTEGER UNSIGNED AUTO_INCREMENT NULL, nome VARCHAR(100) NOT NULL, CPF VARCHAR(14) NULL, CNPJ VARCHAR(18) NULL, email VARCHAR(100) NOT NULL, senha VARCHAR(7) NOT NULL, chave VARCHAR(255) NULL, validacao BOOLEAN NOT NULL, tipo_usuario VARCHAR(20) NOT NULL, PRIMARY KEY(id) ); Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Junho 17, 2015 você tem um mapeamento [de -> para] bem estranho: $result['tipo_usuario'] == 'USU' -> $_SESSION['nivel'] = 'USUARIO'; $result['tipo_usuario'] == 'MOD' -> $_SESSION['nivel'] = 'MODERADOR'; $result['tipo_usuario'] == 'ADM' -> $_SESSION['nivel'] = 'ADMINISTRADOR';Ai é lógico que a a outra query não vai bater, pq tem uma coisa na sessão, e outra totalmente diferente na tabela. Que tal fazer assim: $_SESSION['nivel'] = $result['tipo_usuario'];ai sim uma query vai fazer sentido, pois você estará guardando na sessão o que realmente tem na tabela. Compartilhar este post Link para o post Compartilhar em outros sites
VictorPHP 1 Denunciar post Postado Junho 18, 2015 você tem um mapeamento [de -> para] bem estranho: $result['tipo_usuario'] == 'USU' -> $_SESSION['nivel'] = 'USUARIO'; $result['tipo_usuario'] == 'MOD' -> $_SESSION['nivel'] = 'MODERADOR'; $result['tipo_usuario'] == 'ADM' -> $_SESSION['nivel'] = 'ADMINISTRADOR';Ai é lógico que a a outra query não vai bater, pq tem uma coisa na sessão, e outra totalmente diferente na tabela. Que tal fazer assim: $_SESSION['nivel'] = $result['tipo_usuario'];ai sim uma query vai fazer sentido, pois você estará guardando na sessão o que realmente tem na tabela. Willian grato por responder , mas na verdade esse mapeamento estranho funciona , pois consigo escrever o tipo de usuario em outra pagina pegando pela SESSION. Nao sei se me expressei mal, mas quero saber como fazer a pesquisa no banco, pegando todos os usuarios que possuirem o mesmo tipo de usuario -- > WHERE = session Tipo_usuario Grato Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Junho 18, 2015 Se vc não fizer o mapeamento, vc conseguirá fazer a query. Compartilhar este post Link para o post Compartilhar em outros sites