Jump to content
Salvatore

[Resolvido] MOSTRAR NOME DO USUARIO LOGADO

Recommended Posts

Então eu fiz um sistema de login tipo com um nivel de acesso se a tabela adm for = 1 redireciona para o painel e caso não for igual a 1 leva pro index que o usuário normal, o que eu queria sabe fazer e mostrar o nome do usuário normal e do usúario administrador depende de quem for logado

 

ai tem a msg Sr.NOME, ai queria saber como eu verifico e exibo o nome se for Adm exibe e se for Usuário tbm exibe, pq vai ser tipo um index pagina central

Share this post


Link to post
Share on other sites

Salvatore

É muito simples, você faz a verificação do usuário certo?

O usuário digita o login e pass e você vai no banco de dados ver se ele tem permissão ou algo do tipo.

Pelo menos é assim que deve funcionar um sistema de login, bom, nesta verificação você precisa obter o nome do usuário no seu select, após o retorno da confirmação se o usuário tem ou não acesso e com o retorno do nome você vai colocar os comandos abaixo:

 

<?php

session_start();

$_SESSION['nome_usuario'] = Sua variável com o nome retornada do acesso ao banco de dados.

?>

 

Se você não sabe segue um exemplo:

$sql = "select nome_usuario from tb_usuario where login = '".$_POST['login']."' and pass = '".$_POST['pass']."'";

$nome = mysql_fetch_assoc(mysql_query($sql));

$_SESSION['nome_usuario'] = $nome['nome_usuario'];

 

Feito isso, basta em qualquer lugar do seu sistema você colocar no inicio da página o comando

<?php

session_start(); //Esse comando no inicio da Página

?>

<?php

//Feito isso você pode utilizar a variável de SESSÃO para exibir o valor armazenado em qualquer lugar da Página que você colocou o session_start().

echo "Sr. ".$_SESSION['nome_usuario'];

?>

 

Se a resposta lhe for útil, não esqueça de agradescer o POST e votar positivo.

Espero ter ajudado de alguma forma

 

Att
Felipe Guedes Coutinho

 

Share this post


Link to post
Share on other sites
9 horas atrás, Felipe Guedes Coutinho disse:

Salvatore

É muito simples, você faz a verificação do usuário certo?

O usuário digita o login e pass e você vai no banco de dados ver se ele tem permissão ou algo do tipo.

Pelo menos é assim que deve funcionar um sistema de login, bom, nesta verificação você precisa obter o nome do usuário no seu select, após o retorno da confirmação se o usuário tem ou não acesso e com o retorno do nome você vai colocar os comandos abaixo:

 

<?php

session_start();

$_SESSION['nome_usuario'] = Sua variável com o nome retornada do acesso ao banco de dados.

?>

 

Se você não sabe segue um exemplo:

$sql = "select nome_usuario from tb_usuario where login = '".$_POST['login']."' and pass = '".$_POST['pass']."'";

$nome = mysql_fetch_assoc(mysql_query($sql));

$_SESSION['nome_usuario'] = $nome['nome_usuario'];

 

Feito isso, basta em qualquer lugar do seu sistema você colocar no inicio da página o comando

<?php

session_start(); //Esse comando no inicio da Página

?>

<?php

//Feito isso você pode utilizar a variável de SESSÃO para exibir o valor armazenado em qualquer lugar da Página que você colocou o session_start().

echo "Sr. ".$_SESSION['nome_usuario'];

?>

 

Se a resposta lhe for útil, não esqueça de agradescer o POST e votar positivo.

Espero ter ajudado de alguma forma

 

Att
Felipe Guedes Coutinho

 

mesmo assim não vai

 

Codigo do Login

<?php 

include("admin/bd/config.php");

if (isset($_POST['username']) && isset($_POST['password'])) {
    $username = $_POST['username'];
    $password = $_POST['password'];
    $get = mysqli_query($con,"SELECT * FROM authme WHERE username = '$username'");
    $num = mysqli_num_rows($get);

    if ($num == 1) {

        while ($percorrer = mysqli_fetch_assoc($get)) {

            if (password_verify ( $_POST['password'] , $percorrer['password'] )){

                $adm = $percorrer['adm'];
                $username = $percorrer['username'];
                session_start();
                if ($adm == 1) {
                    $_SESSION['adm'] = $username;
                    header("Location: admin/index.php");
                }else{
                    $_SESSION['nor'] = $username;
                    header("Location: index.php");
                }

            }

        }

    }


}

eu acho que tinha que fazer uma verificação pra saber se ele e adm ou não, mas quando eu faço essa verificação fica dando erro de de variavel

Share this post


Link to post
Share on other sites

Salvatore

Para que você possa utilizar QUALQUER variável de SESSÃO ou seja, qualquer variável do tipo $_SESSION['NomeVariavelQualquer'] você precisa obrigatoriamente colocar o comando SESSION_START(); antes de atribuir um valor ou exibir o valor.

 

Resumindo, se você tem em seu arquivo $_SESSION['NomeVariavelQualquer'] você tem que colocar o comando SESSION_START();

 

Experimente utilizar o código abaixo:

Arquivo login.php

<?php

include("admin/bd/config.php");

//Aqui você já pode iniciar a sua SESSÃO.

SESSION_START();

//O comando !empty significa DIFERENTE DE VAZIO

if (!empty($_POST['username']) and !empty($_POST['password'])) {

    $_SESSION['username'] = $_POST['username'];

    $_SESSION['password'] = $_POST['password'];

 

    $sql = "SELECT username FROM authme WHERE username = '".$_SESSION['username']."' and password = '".$_SESSION['password']."'");

    //Dentro do IF abaixo você executa o comando e se ele retornar alguma coisa, 1 registro, então movemos o nome do usuário para a variável de SESSÃO ADMIN se ele não encontrar então ele é um usuário normal, seguindo a sua lógica do num == 1 e percorre até encontrar o password, mas no exemplo que dei basta no mesmo select você buscar pelas duas informações.

    if ($resultado = mysql_fetch_assoc(mysql_query($sql))) {

       $_SESSION['adm'] = $resultado['username'];

        header("Location: admin/index.php");

        exit();

    else {

        $_SESSION['nor'] = $_POST['username'];

        header("Location: index.php");

        exit();

    }

} else {

    header("Location: index.php?usuario=vazio&password=vazio");

    exit();

}

 

//Feito tudo isso, coloque dentro do seu arquivo INDEX.php e de admin/index.php os comandos abaixo:

 

SESSION_START();

if (!empty($_SESSION['adm'])) {

    echo "Bem vindo Sr. ".$_SESSION['adm'];

} else {

    if (!empty($_SESSION['nor'])) {

        echo "Bem vindo usuário: ".$_SESSION['nor'];

    } else {

        echo "O usuário não cadastrado em nossa base de dados";

    }

}

 

Veja se funciona.

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

 

Espero ter ajudado de alguma forma.

 

 

Att
Felipe Guedes Coutinho

Share this post


Link to post
Share on other sites
12 minutos atrás, Felipe Guedes Coutinho disse:

Salvatore

Para que você possa utilizar QUALQUER variável de SESSÃO ou seja, qualquer variável do tipo $_SESSION['NomeVariavelQualquer'] você precisa obrigatoriamente colocar o comando SESSION_START(); antes de atribuir um valor ou exibir o valor.

 

Resumindo, se você tem em seu arquivo $_SESSION['NomeVariavelQualquer'] você tem que colocar o comando SESSION_START();

 

Experimente utilizar o código abaixo:

Arquivo login.php

<?php

include("admin/bd/config.php");

//Aqui você já pode iniciar a iniciar sua SESSÃO.

SESSION_START();

//O comando !empty significa DIFERENTE DE VAZIO

if (!empty($_POST['username']) and !empty($_POST['password'])) {

    $_SESSION['username'] = $_POST['username'];

    $_SESSION['password'] = $_POST['password'];

 

    $sql = "SELECT username FROM authme WHERE username = '".$_SESSION['username']."' and password = '".$_SESSION['password']."'");

    //Dentro do IF abaixo você executa o comando e se ele retornar alguma coisa, 1 registro, então movemos o nome do usuário para a variável de SESSÃO ADMIN se ele não encontrar então ele é um usuário normal, seguindo a sua lógica do num == 1 e percorre até encontrar o password, mas no exemplo que dei basta no mesmo select você buscar pelas duas informações.

    if ($resultado = mysql_fetch_assoc(mysql_query($sql))) {

       $_SESSION['adm'] = $resultado['username'];

        header("Location: admin/index.php");

        exit();

    else {

        $_SESSION['nor'] = $_POST['username'];

        header("Location: index.php");

        exit();

    }

} else {

    header("Location: index.php?usuario=vazio&password=vazio");

    exit();

}

 

//Feito tudo isso, coloque dentro do seu arquivo INDEX.php o comando

 

SESSION_START();

if (!empty($_SESSION['adm'])) {

    echo "Bem vindo Sr. ".$_SESSION['adm'];

} else {

    echo "O usuário não é um administrador";

}

 

 

if (!empty($_SESSION['nor'])) {

    echo "Bem vindo usuário: ".$_SESSION['nor'];

} else {

    echo "O usuário não cadastrado em nossa base de dados";

}

 

Veja se funciona.

 

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

 

Espero ter ajudado de alguma forma.

 

 

Att
Felipe Guedes Coutinho

Deu certo como eu marco como resolvido?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By anabeatrizzz
      2. Por que PHP é a mais utilizada em projetos? Explique.
       
      3. São 24 anos de desenvolvimento em PHP, o que faz ele durar tanto na área da programação? Explique.
       
      4. Você acredita que o PHP vai morrer ou não? Explique.
       
      5. Explique o que seria esta HHVM que as empresas utilizam.
       
      6. PHP tem a facilidade de criar APIs, quais seriam as vantagens na hora de desenvolver aplicativos para celular? Explique.
       
      7. Explique um pouco sobre o Laravel, Zend Framework, Sympony, lumen, codelgniter que foram surgindo ao decorrer dos anos.
       
      8. “O PHP veio da WEB e da WEB ele permanecerá”. O que essa frase significaria para você? Explique.
       
      9. Como funcionariam as comunidades em PHP? Por que existem tantas pessoas ainda usando a linguagem? Explique.
       
      10. O PHP vem se modernizando durante anos, quais seriam estas evoluções dele? Explique.
    • By fideles
      Mais uma vez venho aqui pedir ajuda a vocês.
       
      Tenho um formulario que criei aqui na empresa algo bem simples, somente para sair das planilhas de excel, que seria cadastro de funcionarios.
       
      Tem os campos, matricula, nome completo, unidade de trabalho, endereço e telefone de emergencia.
       
      A parte do formulario funciona, a gravação no BD tbm, listar as informações também, ai me perguntaram se era possível um auto preenchimento dos campos colocando somente a matricula do funcionario e respondi que eu não sei porque realmente não sei.
       
      A ajuda que eu preciso de vocês seria, é possível fazer isso ? Colocar a matricula e vir do banco e preencher os outros inputs? Se sim, é possível me derem um exemplo de como funciona e eu estudar o codigo e colocar nos outros inputs.
       
      Obrigado antecipadamente. 
       
    • By tetsuo
      Boas galera?
      Às vezes subo um projeto que, despercebidamente passa um arquivo com letra maiúscula/minúscula
      E dá trabalho pra descobrir que era somente e apenas isso.
       
      Como posso resolver isso?
      Uso rWindows 10.
      Mas a hospedagem é em linux.
       
      O Docker serviria pra me ajudar com essa questão?
       
    • By lUANZIKA3
      minha pagina contém uma table que
      exibe a ultima id da minha DB porém ela não fica ativa.
      a ultima id só é exibida se o form tiver sido enviado.
      ↓table aonde é exibida a Insert_id
      <table class="table table-dark" method="POST" action="processa.php"> <thead> <tr> <th scope="col">#</th> <th scope="col">Ultimo ID</th> </tr> </thead> <tbody> <tr> <th scope="row">1</th> <td> <?php if(isset($_SESSION['id'])){ echo $_SESSION['id']; } ?></td> </tr> </tbody> </table> Agora a conexao.php
      <?php session_start(); $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "contas"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); $nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_STRING); $face = filter_input(INPUT_POST, 'face', FILTER_SANITIZE_STRING); $numeros = filter_input(INPUT_POST, 'numeros', FILTER_SANITIZE_STRING); //echo "Nome: $nome <br>"; //echo "E-mail: $email <br>"; $result_usuario = "INSERT INTO usuarios (nome, face, numeros, created) VALUES ('$nome', '$face', '$numeros', NOW())"; if ($conn->query($result_usuario) === TRUE) { $id = $conn->insert_id; $_SESSION['id'] = "" . $id; } else { echo "Error: " . $result_usuario . "<br>" . $conn->error; } $resultado_usuario = mysqli_query($conn, $result_usuario); if(mysqli_insert_id($conn)){ $_SESSION['msg'] = "<div class='alert alert-success' role='alert'> Parabéns agora você está participando! </div>"; header("Location: index.php"); }else{ $_SESSION['msg'] = "<div class='alert alert-danger' role='alert'> OPS! Parece que você já está participando, espere por outro sorteio e volte! </div>"; header("Location: index.php"); }  
    • By lUANZIKA3
      minha pagina contém uma table que
      exibe a ultima id da minha DB porém ela não fica ativa.
      a ultima id só é exibida se o form tiver sido enviado.
      ↓table aonde é exibida a Insert_id
      <table class="table table-dark" method="POST" action="processa.php"> <thead> <tr> <th scope="col">#</th> <th scope="col">Ultimo ID</th> </tr> </thead> <tbody> <tr> <th scope="row">1</th> <td> <?php if(isset($_SESSION['id'])){ echo $_SESSION['id']; } ?></td> </tr> </tbody> </table> Agora a conexao.php
      <?php session_start(); $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "contas"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); $nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_STRING); $face = filter_input(INPUT_POST, 'face', FILTER_SANITIZE_STRING); $numeros = filter_input(INPUT_POST, 'numeros', FILTER_SANITIZE_STRING); //echo "Nome: $nome <br>"; //echo "E-mail: $email <br>"; $result_usuario = "INSERT INTO usuarios (nome, face, numeros, created) VALUES ('$nome', '$face', '$numeros', NOW())"; if ($conn->query($result_usuario) === TRUE) { $id = $conn->insert_id; $_SESSION['id'] = "" . $id; } else { echo "Error: " . $result_usuario . "<br>" . $conn->error; } $resultado_usuario = mysqli_query($conn, $result_usuario); if(mysqli_insert_id($conn)){ $_SESSION['msg'] = "<div class='alert alert-success' role='alert'> Parabéns agora você está participando! </div>"; header("Location: index.php"); }else{ $_SESSION['msg'] = "<div class='alert alert-danger' role='alert'> OPS! Parece que você já está participando, espere por outro sorteio e volte! </div>"; header("Location: index.php"); }  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.