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 leonardoc.g
      Quando eu tento fazer conexão no banco de dados pelo Dreamweaver me aparece essa mensagem:
       
      your php server doesn't have the MySQL module loaded or you cant't use the mysql_(p)connect functions
       
       
    • By Julie_santiago
      Olá!
      Pessoal, preciso muito de um help urgente. Estou tentando fazer uma simples query ao banco de dados, usando o Axios. Mas, não importa a forma de fazer a requisição, o Axios não funciona. O HTML está abaixo, onde chamo a função enviaDados() através do onsubmit.
      <div class="input-group md-form"> <form method="get" onsubmit="enviaDados()" name="buscar"> <input type="text" id="Form-search2" class="form-control" name="nomeReagente"> <label for="Form-search2">Search</label> <input type="submit" name="pesquisar" value="buscar"> </form> <span class="input-group-text dark lighten-2" id="basic-text1"> <i class="fas fa-search text-dark" aria-hidden="true"></i> </span> </div> Meu arquivo main.js que contém a função enviaDados().
      function enviaDados(){ let nome = buscar.nomeReagente.value recebeDados(nome); } Dentro dessa função, estou chamando outra: recebeDados() que executa a requisição Axios. Passo como parâmetro o valor lá do meu input. OBS.: Meu código está assim, aparentemente confuso, porque o objetivo é ter funções que enviam os dados dos meus formulários e outras funções (genéricas) para receber e tratar esses dados. Abaixo a função recebeDados():
      function recebeDados(nome_reagente){ axios.get('http://localhost/Quimica/php/recebe_json.php', { params: { nome } }) .then(function (response) { console.log(response); }) .catch(function (error) { console.log('Não foi possível realizar a requsição: '+error); }) .finally(function () { }); } Não importa o que eu faça, sempre cai no CATCH  - request aborted. Preciso muito resolver esse problema, mas não faço ideia do que pode ser. Relevem qualquer "noobice" porque estou aprendendo o básico ainda.
       
    • By JeanTDZ
      Olá pessoal!
       
      Estou com uma tremenda dificuldade.
      Tenho um formulário na qual está funcionando e cadastrando, porém preciso que o meu botão adicionar autorizado funcione e mostre o que foi digitado para o e-mail. As informações na vdd é enviada para o e-mail e o que será enviado é oque será digitado.
       
      Simplificando ->
      Tenho um botão que adiciona 2 inputs (NOME E SALDO) e conforme for clicando nesse botão, vai adicionando mais campos.
      Dúvida: Como posso fazer com que grave o que foi digitado nesses campos?
       
      Segue o que eu tentei fazer até agora:

      HTML
      <!DOCTYPE html> <html>     <head>         <title>Chame Taxi PrePago</title>                 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>         <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />         <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>         <link rel="icon" type="image/x-icon" href="https://www.flaticon.com/premium-icon/icons/svg/1361/1361253.svg" />         <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.min.js"></script>     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>     <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>     </head>     <body>         <br />         <div class="container" style="width:100%; max-width:600px">             <h2 align="center">Pré-Pago</h2>             <br />             <div class="panel panel-default">                 <div class="panel-heading"><h4>Registrar</h4></div>                 <div class="panel-body">                     <form method="post" id="register_form">                         <?php echo $message; ?>                         <div class="form-group">                             <label>Nome Completo</label>                             <input type="text" name="user_name" style="text-transform:uppercase" class="form-control" pattern="[a-zA-Z ]+" required />                         </div>                         <div class="form-group">                             <label>E-mail</label>                             <input type="email" name="user_email"  style="text-transform:uppercase" class="form-control" required />                         </div>                         <div class="form-group">                             <label>CEP</label>                             <input type="text" name="campob" id="cep" value="" maxlength="9" onblur="pesquisacep(this.value);" class="form-control">                         </div>                         <div class="form-group"> <table id="myTable" class="table"> <a class="btn btn-primary" onclick="myFunction()" href="#" role="button">Adicionar Autorizado</a>             <thead>                 <tr>                     <th>NOME</th>                     <th>SALDO</th>                 </tr>             </thead>         </table>                         <div class="form-group">                             <input type="submit" name="register" id="register" value="Validar" class="btn btn-info" />                         </div>                     </form>                 </div>             </div>         </div>     </body> </html> JAVASCRIPT 
       
          <script>         var incremento = -1;         function myFunction() {             incremento++;             var table = document.getElementById("myTable");             var row = table.insertRow(0);             var cell1 = row.insertCell(0);             var cell2 = row.insertCell(1);             var cell3 = row.insertCell(2);             var cell4 = row.insertCell(3);             cell1.innerHTML = "NOME";             cell2.innerHTML = '<input type="text" name="name1[${incremento}]" >';             cell3.innerHTML = "SALDO";             cell4.innerHTML = '<input type="text" name="saldo[${incremento}]" size="15px" >';         }     </script>  
    • By gramosiri2
      Oi estou tentando passar um valor através de uma variável em uma query, porém não está mostrando o resultado que eu quero.
       
      Aqui eu pego o ultimo id do pedido
      <?php while($row = $consulta_pedido2->fetch_assoc()){ echo $row['id_pedido']; }?> E aqui eu faço a query e passo variável...
      $query ="SELECT itempedido.id_itempedido, itempedido.valor, ... FROM itempedido INNER JOIN produto ON ... WHERE itempedido.pedido_id = '$row'"; No caso onde está a variável $row, se eu colocar o numero do pedido manualmente, me retorno os itens daquele pedido, agora com a variável não está mostrando, alguma ideia?
    • By gustavodubarbosa
      Estou criando uma página que realize monitoramento de atividades.
      No meu código PHP defini uma variável que busca a data atual, depois passei o parâmetro de conexão com o banco de dados, depois criei um while para buscar as informações, dentro do while criei um if, a condição if é que se a variável data for igual a data cadastrada na atividade, exiba toda a atividade cadastrada. Mas o problema é que o if não está controlando essa condição, está passando direto e exibindo tudo.
      <?php $number = ('23'); $data = date("Y-m-d"); echo "$data"; /*Aqui realizo a conexão com o banco de dados, passo os dados para conectar, caso dê algum erro, o sistema me retorna uma mensagem de erro*/ $conect = mysqli_connect('localhost','root','','projeto_pessoal') or die ('Erro na conexão com o banco de dados'); /*Aqui passo o comando para realizar a busca no banco de dados, aplicando o filtro de pesquisa*/ $result_pesquisa = "SELECT * FROM cadastrar_atividade"; /*Neste momento, mando a execução, preciso passar como parametro a variável com a conexão e a variável com o comando, caso dê erro, será exibido uma mensagem*/ $resultado_pesquisa = mysqli_query($conect, $result_pesquisa); /*Aqui é aberto um laço de repetição para fazer uma varredura no banco de dados, em seguida realizo a exibição do que foi encontrado*/ ?> <h1>Resultado da Pesquisa</h1> <?php while($rows_pesquisa = mysqli_fetch_array($resultado_pesquisa)){ if($rows_pesquisa['prazo'] == $data) echo '<p class="title">'.'ID da atividade: '.'</p>'.'<p class="result">'.$rows_pesquisa['id'].'<br>'.'</p>'; echo '<p class="title">'.'Nome da atividade: '.'</p>'.'<p class="result">'.$rows_pesquisa['nome_atividade'].'<br>'.'</p>'; echo '<p class="title">'.'Descrição da atividade: '.'</p>'.'<p class="result">'.$rows_pesquisa['desc_atividade'].'<br>'.'</p>'; echo '<p class="title">'.'Prioridade: '.'</p>'.'<p class="result">'.$rows_pesquisa['prioridade'].'<br>'.'</p>'; echo '<p class="title">'.'Prazo: '.'</p>'.'<p class="result">'.$rows_pesquisa['prazo'].'<br>'.'</p>'; echo 'carregado'; echo '<hr></hr>'; } ?>  
×

Important Information

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