Ir ao conteúdo
  • Cadastre-se

PHP Como colocar o nome do usuário logado no sistema PHP


Posts recomendados

Bom dia pessoal, sou novo em PHP e gostaria de uma ajuda, estou adapitando um layout no meu painel php e agostaria de colocar o usuário logado nele de acordo com o login que foi utilizado para logar no sistema.

 

Segue abaixo os códigos de validação...


 

<?php error_reporting (E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);require_once('Connections/config.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }

  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
}
?>
<?php
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
  session_start();
}

$loginFormAction = $_SERVER['PHP_SELF'];
if (isset($_GET['accesscheck'])) {
  $_SESSION['PrevUrl'] = $_GET['accesscheck'];
}

if (isset($_POST['Login'])) {
  $loginUsername=$_POST['Login'];
  $password=$_POST['Senha:'];
  $MM_fldUserAuthorization = "";
  $MM_redirectLoginSuccess = "painel.php";
  $MM_redirectLoginFailed = "erro.php";
  $MM_redirecttoReferrer = false;
  mysql_select_db($database_config, $config);
  
  $LoginRS__query=sprintf("SELECT Login, Senha FROM `usuário` WHERE Login=%s AND Senha=%s",
    GetSQLValueString($loginUsername, "text"), GetSQLValueString($password, "text")); 
   
  $LoginRS = mysql_query($LoginRS__query, $config) or die(mysql_error());
  $loginFoundUser = mysql_num_rows($LoginRS);
  if ($loginFoundUser) {
     $loginStrGroup = "";
    
    if (PHP_VERSION >= 5.1) {session_regenerate_id(true);} else {session_regenerate_id();}
    //declare two session variables and assign them
    $_SESSION['MM_Username'] = $loginUsername;
    $_SESSION['MM_UserGroup'] = $loginStrGroup;          

    if (isset($_SESSION['PrevUrl']) && false) {
      $MM_redirectLoginSuccess = $_SESSION['PrevUrl'];    
    }
    header("Location: " . $MM_redirectLoginSuccess );
  }
  else {
    header("Location: ". $MM_redirectLoginFailed );
  }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login de Sistema MM</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<style type="text/css">

</style>
</head>

<body>

<center>

<div id='conteudologinsistema'>

<table align="center" width="167" height="200" border="0">
  
    <tr>
      <th width="161" height="190" scope="col">
        
   <br><br><br>
    <h6 style="font-size: 55px">SisWebMM</h6>
   
   </th>
    </tr>
  
</table>

 
  <table align="center" width="351" height="200" border="0">


    <tr>
   
      <td align="center" bgcolor="#FFFFFF"><form id="form1" name="form1" method="POST" action="<?php echo $loginFormAction; ?>">
      
  <table width="351" border="0">
    <tr>
      <td align="center" style="font-size: 12px"> <span>Entre com usuário e senha</span><br><br></td>
    </tr>
    
      <td align="center" colspan="3"><label for="Login"></label>
      <input style="color:#000"; type="text"  name="Login" placeholder="Usuário" onfocus="if (this.value=='Usuário') this.value='';" onblur="if (this.value=='') this.value='Usuário'"id="Usuário:"   maxlength="20" size="25" class="figurasemail" /></td> 

      
      </td>
    </tr><br>
    <tr>
     
      <td align="center" colspan="3"><label for="Senha:"></label>
      <input style="color:#000" type="password" name="Senha:" placeholder="Senha"  onfocus="if (this.value=='Senha') this.value='';" onblur="if (this.value=='') this.value='Senha'"id="Senha:"   maxlength="8" size="25" class="figurassenha"  /></form></td>
      
    </tr>
    <br />
    <tr>
      <td height="65" colspan="4" align="center" valign="bottom"><br />
      
      <input type = "submit" name = "nome" value = "Entrar" p style = "color: black; cursor: pointer; background-color: white; font-size: 20px; font-weight: bold; width: 200; height: 145; font-family: verdana; border: 1px dotted #000000;"/>
<div id="menu">
    <ul>
    <li><a  href="index.php">Ir para o site</a></li>
    </ul>
    
</div>
      
    </tr>
  
</td>
   
    </tr>
  
</table>


    </div>
    </center>

</body>
</html>

 

 

E em outra pagina já do painel eu tenho uma área que gostaria de colocar o usuário conforme código abaixo.

 

 <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                          <span class="hidden-xs">          <!--Aparecer o nome do usuário logado??? -->      </span>
            </a>

 

Desde já agradeço a compreenção e ajuda de todos.

Link para o comentário
Compartilhar em outros sites

  • Moderador

@Marcelo Mousinho  Basta colocar um:

 

echo $_SESSION['MM_Username'];

No elemento span.

 

Vai aparecer o nome de usuário. Se quiser colocar o nome da pessoa, aí você precisa adicionar mais uma linha colocando o nome dele em uma sessão:

assim:

 

$_SESSION['nome_usuario'] = $nome;

Onde este $nome,  traz o nome dele na consulta do:  $LoginRS__query=sprintf()

 

Recomendo pela minha experiência, você mudar o código todo para a nova extensão MySQLi.

 

Link para o comentário
Compartilhar em outros sites

  • Moderador

@Marcelo Mousinho Não sei qual o programa de servidor local que usa, eu costumo usar o EasyPHP DEV server 17.  Nele, o mysqli  vem habilitado por padrão. 

 

Para trocar para mysqli, você vai ter que alterar quase todas as funções que você usa.

 

Por exemplo a conexão você faz:

$conexao = mysqli_connect("localhost", "usuario","senha","nome do banco de dados")

aí depois você usa o mysqli_query(),   mysqli_fetch_object()... e por aí vai.

 

 

 Sobre a sua sessão, se não printou em tela o valor da sessão é porque ela não foi armazenada. 

Olhando para seu código, eu vejo um padrão quando desenvolvido pelo Dreamweaver.  você usa ele? Se sim, recomendo fortemente parar de usar. Ele deixa o código muito sujo... depois você gasta tempo tirando o que não quer e se der problema é muita coisa para analisar.

 

Use uma ide como o eclipse for PHP... notepad++...  etc..

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Moderador

@Marcelo Mousinho Se for para recomendar um em específico, eu recomendo o Eclipse For php

Na lista da direita, você escolhe se quer a versão 32 bits ou 64 bits.

 

Pelo menos, eu considero muito melhor do que o notpad++! Uso ele desde 2009 e até então não achei outro melhor.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Obrigado pela ajuda man, consegui resolver a minha questão com a sua ajuda.

adicionado 10 minutos depois

Agora tenho que colocar a foto do usuário do sistema de acordo com o login.

 

Os dados como nome e cargo eu validei conforme abaixo na tela de "validação.php".

 

 

$_SESSION['usuarioNome'] = $resultado['nome'];
    $_SESSION['usuarioImagem'] = $resultado['imagem'];
    $_SESSION['usuarioNivelAcesso'] = $resultado['nivel_acesso_id'];
    $_SESSION['usuarioLogin'] = $resultado['login'];
    $_SESSION['usuarioSenha'] = $resultado['senha'];
    $_SESSION['usuarioCreated'] = $resultado['created'];

 

e no painel puxei desta forma conforme abaixo:

 

<?php    
              echo "Usuário: ".$_SESSION['usuarioNome'];
 ?>

e assim eu fiz com cada  "SESSION" que eu quisesse validar no painel.

 

Agora no meu banco de dados mysql tenho uma foto cadastrada para cada usuário e gostaria de na parte painel colocasse algo tipo uma "echo" com a foto de acordo com o usuário logado, ja tenho tudo proigramado com relação o usuário logado e incusive ja puxa as "SESSION" acima listado, porém estou com essa dúvida.

 

Pergunta: 

Como faço para exibir a foto do usuário?

 

Desde já agradeço.

Em anexo a imagem do que preciso para ilustrar melhor!!!

 

img.png

Link para o comentário
Compartilhar em outros sites

  • Moderador

@Marcelo Mousinho Para colocar a foto ali, faça da seguinte forma:

 

Armazene a imagem em uma pasta qualquer no servidor.  No banco de dados, você guarda o nome da imagem junto com a extensão por exemplo  foto.png 

 

Aí quando fazer a consulta dos dados, você busca o nome da imagem e concatena com uma variável com o caminho real da imagem. aí é só colocar o echo dentro de uma tag img...

 

exemplo:

 

ID nome   email               senha     foto
1  fulano [email protected]  teste123  foto.png 

Este seria a sua tabela no banco de dados.

 

Para concatenar seria assim:

$foto = "fotosUsuarios\" . $resultado["foto"];

Aí você põe ele no img:

 

<img src="<?php echo $foto" alt="foto"/>

 

Link para o comentário
Compartilhar em outros sites

man consegui exibir a foto mais preciso colocar no tamanho certo com class e alt, pode me ajudar?

 

 <?php echo '<img src="data:image/png; base64,'.base64_encode($_SESSION['usuarioImagem']).'"/>'; ?>

 

Este foi o código que usei

adicionado 0 minutos depois

Preciso colocar isso ai 

class="user-image" alt="user image"

Link para o comentário
Compartilhar em outros sites

Pessoal consegui fazer a inclusão de todos os dados que precisava inclusive a foto, porém a foto não reconhece quando cadastro via sistema apenas reconhece a foto via phpmyadmin.

 

Este é o código que usei!!!

 

<div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Imagem 160 x 160</label>
    <div class="col-sm-10">
      <input type="file" class="image" name="imagem" >
    </div>
  </div>

 

Segue o anexo de como esta saindo a foto do usuário.

Sem título.png

Link para o comentário
Compartilhar em outros sites

  • Moderador

@Marcelo Mousinho Pelo que eu vi, a foto não está sendo encontrada.

O fragmento de código de nada adianta.  Você diz que o problema não acontece quando faz diretamente no phpmyadmin. 

Isso ratifica que o problema está no seu código PHP no momento do cadastro.

Possíveis problemas no recebimento da imagem, você não especificou direito o diretório da imagem...  enfim..

 

Só podemos dizer o que está errado se você postar o código completo do cadastro, tanto o formulário html como o código php que recebe os dados do formulário de cadastro( incluindo a foto).

 

Outra coisa, como você está fazendo o cadastro da imagem? inserindo o nome dela em um campo do BD e movendo o arquivo para um diretório??

 

 

 

Link para o comentário
Compartilhar em outros sites

Segue o código da tela cadastro_usuario.php.

<?php
session_start();

include('conexao.php');
include('segurança.php');
 
?>


 

<!DOCTYPE html>

<html>
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title>SISWEBMM | Cadastro de usuário</title> 
  <!-- Tell the browser to be responsive to screen width -->
  <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
  <!-- Bootstrap 3.3.7 -->
  <link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css">
  <!-- Font Awesome -->
  <link rel="stylesheet" href="bower_components/font-awesome/css/font-awesome.min.css">
  <!-- Ionicons -->
  <link rel="stylesheet" href="bower_components/Ionicons/css/ionicons.min.css">
  <!-- Theme style -->
  <link rel="stylesheet" href="dist/css/AdminLTE.min.css">
  <!-- AdminLTE Skins. Choose a skin from the css/skins
       folder instead of downloading all of them to reduce the load. -->
  <link rel="stylesheet" href="dist/css/skins/_all-skins.min.css">
  <!-- Morris chart -->
  <link rel="stylesheet" href="bower_components/morris.js/morris.css">
  <!-- jvectormap -->
  <link rel="stylesheet" href="bower_components/jvectormap/jquery-jvectormap.css">
  <!-- Date Picker -->
  <link rel="stylesheet" href="bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css">
  <!-- Daterange picker -->
  <link rel="stylesheet" href="bower_components/bootstrap-daterangepicker/daterangepicker.css">
  <!-- bootstrap wysihtml5 - text editor -->
  <link rel="stylesheet" href="plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css">
  
   <link rel="icon" href="imagens/icones/4533Logo MM Transportes sem fundo.ico">

  <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
  <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
  <!--[if lt IE 9]>
  <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
  <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  <![endif]-->

  <!-- Google Font -->
  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic">
</head>
<body class="hold-transition skin-blue sidebar-mini">

      
<div class="wrapper">

  <header class="main-header">
    <!-- Logo -->
    <a href="painel.php" class="logo">
      <!-- mini logo for sidebar mini 50x50 pixels -->
      <span class="logo-mini"><b>MM</b></span>
      <!-- logo for regular state and mobile devices -->
      <span class="logo-lg"><b>SISWEB</b>MM</span>
    </a>
    <!-- Header Navbar: style can be found in header.less -->
    <nav class="navbar navbar-static-top">
      <!-- Sidebar toggle button-->
      <a href="#" class="sidebar-toggle" data-toggle="push-menu" role="button">
        <span class="sr-only">Toggle navegação</span>
      </a>

      <div class="navbar-custom-menu">
        <ul class="nav navbar-nav">
          <!-- Messages: style can be found in dropdown.less-->
          <li class="dropdown messages-menu">
            <a href="http://mmtransportesseguro.com.br/webmail" target="_blank">
              <i class="fa fa-envelope-o"> Acessar Webmail</i>
             
            </a>
            
          </li>
          
        
          <!-- User Account: style can be found in dropdown.less -->
          <li class="dropdown user user-menu">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">
             
             <!-- <img src="colocar a imagem" class="user-image"   /> -->
             
             <?php echo '<img src="data:image/png; base64,'.base64_encode($_SESSION['usuarioImagem']).'" class="user-image" alt="User Image"/>'; ?>
                
            
              <span class="hidden-xs"><?php
          
        
              
              echo "Usuário: ".$_SESSION['usuarioNome'];
             
          
          
                  ?></span>
            </a>
            <ul class="dropdown-menu">
              <!-- User image -->
              <li class="user-header">
               
               
                <?php echo '<img src="data:image/png; base64,'.base64_encode($_SESSION['usuarioImagem']).'" class="img-circle" alt="User Image"/>'; ?>

               
                <p><span>
                 <?php echo "Cargo: ".$_SESSION['usuarioCargo'];
              ?></span>
                  
                  <small><?php echo "Membro desde: ".$_SESSION['usuarioCreated'];
              ?></small>
                </p>
                
              </li>
              <!-- Menu Body -->
              
              <!-- Menu Footer-->
              <li class="user-footer">
                <div class="pull-left">
                  <a href="#" class="btn btn-default btn-flat">Perfil</a>
                </div>
                <div class="pull-right">
                  <a href="loginsistema.php" class="btn btn-default btn-flat">Sair</a>
                </div>
              </li>
            </ul>
          </li>
          <!-- Control Sidebar Toggle Button -->
          <li>
            
        </ul>
      </div>
    </nav>
    
    
    
  </header>
  <!-- Left side column. contains the logo and sidebar -->
  <aside class="main-sidebar">
    <!-- sidebar: style can be found in sidebar.less -->
    <section class="sidebar">
      <!-- Sidebar user panel -->
      <div class="user-panel">
        <div class="pull-left image">
         
         <?php echo '<img src="data:image/png; base64,'.base64_encode($_SESSION['usuarioImagem']).'" class="img-circle" alt="User Image"/>'; ?>
          
        </div>
        <div class="pull-left info">
         
          <p> <?php echo "Olá ".$_SESSION['usuarioNome'];
              ?>
          </p>
          <a href="#"><i class="fa fa-circle text-success"></i> Online</a>
        </div>
      </div>
     
      
      <!-- sidebar menu: : style can be found in sidebar.less -->
      <ul class="sidebar-menu" data-widget="tree">
        <li class="header">Menu de navegação</li>
        <li class="active treeview">
          <a href="#">
            <i class="fa fa-dashboard"></i> <span>Paineis</span>
            <span class="pull-right-container">
              <i class="fa fa-angle-left pull-right"></i>
            </span>
          </a>
          <ul class="treeview-menu">
             <li class="active"><a href="painel.php"><i class="fa fa-circle-o"></i> Painel perfil 1</a></li>
            
          </ul>
        </li>
        
       <li class="treeview">
          <a href="#">
            <i class="fa fa-edit"></i> <span>Cadastros</span>
            <span class="pull-right-container">
              <i class="fa fa-angle-left pull-right"></i>
            </span>
          </a>
          <ul class="treeview-menu">
            <li><a href="cadastro_usuario.php"><i class="fa fa-circle-o"></i> Usuário</a></li>
            <li><a href="#"><i class="fa fa-circle-o"></i> Clientes</a></li>
            <li><a href="#"><i class="fa fa-circle-o"></i> Fornecedores</a></li>
            <li><a href="#"><i class="fa fa-circle-o"></i> Veículos</a></li>
            <li><a href="#"><i class="fa fa-circle-o"></i> Centro de Custo</a></li>
           </ul>
        </li>

        <li class="treeview">
          <a href="#">
            <i class="fa fa-table"></i> <span>Consultas</span>
            <span class="pull-right-container">
              <i class="fa fa-angle-left pull-right"></i>
            </span>
          </a>
          <ul class="treeview-menu">
            <li><a href="consulta_usuario.php"><i class="fa fa-circle-o"></i> Usuários</a></li>
            <li><a href="pages/tables/data.html"><i class="fa fa-circle-o"></i> Veículos</a></li>
          </ul>
        </li>

        <li class="header">Rótulos</li>
        <li><a href="#"><i class="fa fa-circle-o text-red"></i> <span>Importante</span></a></li>
        <li><a href="#"><i class="fa fa-circle-o text-yellow"></i> <span>Aviso</span></a></li>
        <li><a href="#"><i class="fa fa-circle-o text-aqua"></i> <span>Informações</span></a></li>
      </ul>
    </section>
    <!-- /.sidebar -->
  </aside>


  <!-- Content Wrapper. Contains page content -->
  <div class="content-wrapper">
    <!-- Content Header (Page header) -->
    <section class="content-header">
      <h1>
        Cadastros
        <small>Cadastro de usuário</small>
        
      </h1>
      <ol class="breadcrumb">
        <li><a href="#"><i class="fa fa-dashboard"></i> Inicio</a></li>
        <li class="active">Painel</li>
      </ol>
    </section>

    <!-- Main content -->
    <section class="content">
     
                
                <!-- Colocar aqui o conteudo da pagina -->
                
             <form class="form-horizontal" method="post" action="Processa/processa_cad_usuario.php">;
             
  <div class="form-group">
    <label for="inputEmail3" class="col-sm-2 control-label">Nome</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" name="nome" placeholder="Nome Completo" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Email</label>
    <div class="col-sm-10">
      <input type="email" class="form-control" name="email" placeholder="Email" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Cargo</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" name="cargo" placeholder="Cargo" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Imagem 160 x 160</label>
    <div class="col-sm-10">
      <input type="file" class="image" name="imagem" >
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">login</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" name="login" placeholder="Usuário" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Senha</label>
    <div class="col-sm-10">
      <input type="password" class="form-control" name="senha" placeholder="Senha" maxlength="8" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Nível de Acesso</label>
    <div class="col-sm-10">
      <select class="form-control" name="nivel_acesso_id" required>
  <option value="1"></option>    
  <option value="1">Administrador</option>
  <option value="2">Colabores</option>
  
</select>
      
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Data de Cadastro</label>
    <div class="col-sm-10">
      <input type="date" class="form-control" name="created" placeholder="Data de Cadastro" required="required">
    </div>
  </div>


  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <button type="submit" class="btn btn-primary">Cadastrar</button>
    </div>
  </div>
</form>
                
 
        </section>

        <!-- right col -->
      </div>
      <!-- /.row (main row) -->

    <!-- /.content -->

  <!-- /.content-wrapper -->
  <footer class="main-footer">
    <div class="pull-right hidden-xs">
      <b>Versão</b> 2.4.0
    </div>
    <strong>Copyright © 2017-2018 <a href="https://adminlte.io">MM Transportes</a>.</strong> Todos os direitos reservados.
  </footer>

  <!-- Control Sidebar -->
 
  <!-- /.control-sidebar -->
  <!-- Add the sidebar's background. This div must be placed
       immediately after the control sidebar -->
  <div class="control-sidebar-bg"></div>
<!-- ./wrapper -->

<!-- jQuery 3 -->
<script src="bower_components/jquery/dist/jquery.min.js"></script>
<!-- jQuery UI 1.11.4 -->
<script src="bower_components/jquery-ui/jquery-ui.min.js"></script>
<!-- Resolve conflict in jQuery UI tooltip with Bootstrap tooltip -->
<script>
  $.widget.bridge('uibutton', $.ui.button);
</script>
<!-- Bootstrap 3.3.7 -->
<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<!-- Morris.js charts -->
<script src="bower_components/raphael/raphael.min.js"></script>
<script src="bower_components/morris.js/morris.min.js"></script>
<!-- Sparkline -->
<script src="bower_components/jquery-sparkline/dist/jquery.sparkline.min.js"></script>
<!-- jvectormap -->
<script src="plugins/jvectormap/jquery-jvectormap-1.2.2.min.js"></script>
<script src="plugins/jvectormap/jquery-jvectormap-world-mill-en.js"></script>
<!-- jQuery Knob Chart -->
<script src="bower_components/jquery-knob/dist/jquery.knob.min.js"></script>
<!-- daterangepicker -->
<script src="bower_components/moment/min/moment.min.js"></script>
<script src="bower_components/bootstrap-daterangepicker/daterangepicker.js"></script>
<!-- datepicker -->
<script src="bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js"></script>
<!-- Bootstrap WYSIHTML5 -->
<script src="plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.all.min.js"></script>
<!-- Slimscroll -->
<script src="bower_components/jquery-slimscroll/jquery.slimscroll.min.js"></script>
<!-- FastClick -->
<script src="bower_components/fastclick/lib/fastclick.js"></script>
<!-- AdminLTE App -->
<script src="dist/js/adminlte.min.js"></script>
<!-- AdminLTE dashboard demo (This is only for demo purposes) -->
<script src="dist/js/pages/dashboard.js"></script>
<!-- AdminLTE for demo purposes -->
<script src="dist/js/demo.js"></script>
</body>
</html>



Segue o código da conexao.php.



<?php


$servidor='localhost';
$usuario='root';
$senha='vertrigo';
$bancodedados='loginsiswebmm';


$conectar = mysqli_connect ($servidor, $usuario, $senha, $bancodedados);

if (mysqli_connect_errno())
{
    die ('Houve o seguinte erro:' .mysqli_connect_errno());
    exit();
    
}


?>

Segue o código do valida_login.php.


 

<?php
session_start();
$usuariot = $_POST['login'];
$senhat = $_POST['Senha'];

//para evitar SQL injection

$loginSeguro = addslashes($usuariot);
$senhaSegura = addslashes($senhat);


include_once("conexao.php");

$result = mysqli_query($conectar, "SELECT * FROM usuarios WHERE login='$usuariot' AND senha='$senhat' LIMIT 1");

$resultado = mysqli_fetch_assoc($result);

//echo $resultado{'nome'};
if(empty($resultado)){
    
     //Mensagem se Erro
    $_SESSION['loginErro'] = "Usuário ou senha Inválido";
    
    //Manda para página de login
    header("location: loginsistema.php");
    
    
    
}

else {
    
    //Define os valores atribuidos na sessão do usuário

    $_SESSION['usuarioNome'] = $resultado['nome'];
    $_SESSION['usuarioImagem'] = $resultado['imagem'];
    $_SESSION['usuarioNivelAcesso'] = $resultado['nivel_acesso_id'];
    $_SESSION['usuarioLogin'] = $resultado['login'];
    $_SESSION['usuarioSenha'] = $resultado['senha'];
    $_SESSION['usuarioCreated'] = $resultado['created'];
    $_SESSION['usuarioCargo'] = $resultado['cargo'];

    
    if($_SESSION['usuarioNivelAcesso'] == 1){
        
        header("location: painel.php");
    }
    else
    {
        header("location: painel.php");
    }
    
}

?>

 

Link para o comentário
Compartilhar em outros sites

Man, Boa tarde fiz uma postagem mais foi apagada porque postei sem o Code.

 

Segue novamente.

 

O erro acredito que é porque não estou guardando minha imagem em nenhuma pasta.

 

Segue o código processa_cad_usuario.php.

 

<?php

session_start();

include_once("../segurança.php");
include_once("../conexao.php");


$nome 				= $_POST["nome"];
$email 				= $_POST["email"];
$cargo 				= $_POST["cargo"];
$arquivo 			= $_FILES["arquivo"]['name'];	
$login 				= $_POST["login"];
$senha 				= $_POST["senha"];
$nivel_acesso_id 	= $_POST["nivel_acesso_id"];
$created 			= $_POST["created"];

$_UP['pasta'] = '../imagens/';
// Tamanho máximo do arquivo (em Bytes)
$_UP['tamanho'] = 1024 * 1024 * 2; // 2Mb
// Array com as extensões permitidas
$_UP['extensoes'] = array('jpg', 'png', 'gif');
// Renomeia o arquivo? (Se true, o arquivo será salvo como .jpg e um nome único)
$_UP['renomeia'] = false;
// Array com os tipos de erros de upload do PHP
$_UP['erros'][0] = 'Não houve erro';
$_UP['erros'][1] = 'O arquivo no upload é maior do que o limite do PHP';
$_UP['erros'][2] = 'O arquivo ultrapassa o limite de tamanho especifiado no HTML';
$_UP['erros'][3] = 'O upload do arquivo foi feito parcialmente';
$_UP['erros'][4] = 'Não foi feito o upload do arquivo';
// Verifica se houve algum erro com o upload. Se sim, exibe a mensagem do erro
if ($_FILES['arquivo']['error'] != 0) {
  die("Não foi possível fazer o upload, erro:" . $_UP['erros'][$_FILES['arquivo']['error']]);
  exit; // Para a execução do script
}
// Caso script chegue a esse ponto, não houve erro com o upload e o PHP pode continuar
// Faz a verificação da extensão do arquivo
$extensao = strtolower(end(explode('.', $_FILES['arquivo']['name'])));
if (array_search($extensao, $_UP['extensoes']) === false) {
  echo "Por favor, envie arquivos com as seguintes extensões: jpg, png ou gif";
  exit;
}
// Faz a verificação do tamanho do arquivo
if ($_UP['tamanho'] < $_FILES['arquivo']['size']) {
  echo "O arquivo enviado é muito grande, envie arquivos de até 2Mb.";
  exit;
}
// O arquivo passou em todas as verificações, hora de tentar movê-lo para a pasta
// Primeiro verifica se deve trocar o nome do arquivo
if ($_UP['renomeia'] == true) {
  // Cria um nome baseado no UNIX TIMESTAMP atual e com extensão .jpg
  $nome_final = md5(time()).'.jpg';
} else {
  // Mantém o nome original do arquivo
  $nome_final = $_FILES['arquivo']['name'];
}
  
// Depois verifica se é possível mover o arquivo para a pasta escolhida
if (move_uploaded_file($_FILES['arquivo']['tmp_name'], $_UP['pasta'] . $nome_final)) {
  // Upload efetuado com sucesso, exibe uma mensagem e um link para o arquivo
  echo "Upload efetuado com sucesso!";
  echo '<a href="' . $_UP['pasta'] . $nome_final . '">Clique aqui para acessar o arquivo</a>';
} else {
  // Não foi possível fazer o upload, provavelmente a pasta está incorreta
  echo "Não foi possível enviar o arquivo, tente novamente";
}


$query = mysqli_query($conectar, "INSERT INTO usuarios (nome, email, cargo, imagem, login, senha, nivel_acesso_id, created) VALUES ('$nome', '$email', '$cargo', '$imagem', '$login', '$senha	', '$nivel_acesso_id', '$created') ") or die ("houve erro ao gravar dados");

	if (mysqli_affected_rows($conectar) != 0 ) {
		
	header("location: ../consulta_usuario.php");
	}

?>

Segue o código cadastro_usuario.php



<?php
session_start();

include('conexao.php');
include('segurança.php');
 
?>


<!DOCTYPE html>



<html>
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title>SISWEBMM | Cadastro de usuário</title> 
  <!-- Tell the browser to be responsive to screen width -->
  <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
  <!-- Bootstrap 3.3.7 -->
  <link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css">
  <!-- Font Awesome -->
  <link rel="stylesheet" href="bower_components/font-awesome/css/font-awesome.min.css">
  <!-- Ionicons -->
  <link rel="stylesheet" href="bower_components/Ionicons/css/ionicons.min.css">
  <!-- Theme style -->
  <link rel="stylesheet" href="dist/css/AdminLTE.min.css">
  <!-- AdminLTE Skins. Choose a skin from the css/skins
       folder instead of downloading all of them to reduce the load. -->
  <link rel="stylesheet" href="dist/css/skins/_all-skins.min.css">
  <!-- Morris chart -->
  <link rel="stylesheet" href="bower_components/morris.js/morris.css">
  <!-- jvectormap -->
  <link rel="stylesheet" href="bower_components/jvectormap/jquery-jvectormap.css">
  <!-- Date Picker -->
  <link rel="stylesheet" href="bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css">
  <!-- Daterange picker -->
  <link rel="stylesheet" href="bower_components/bootstrap-daterangepicker/daterangepicker.css">
  <!-- bootstrap wysihtml5 - text editor -->
  <link rel="stylesheet" href="plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css">
  
   <link rel="icon" href="imagens/icones/4533Logo MM Transportes sem fundo.ico">

  <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
  <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
  <!--[if lt IE 9]>
  <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
  <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  <![endif]-->

  <!-- Google Font -->
  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic">
</head>
<body class="hold-transition skin-blue sidebar-mini">

  	
<div class="wrapper">

  <header class="main-header">
    <!-- Logo -->
    <a href="painel.php" class="logo">
      <!-- mini logo for sidebar mini 50x50 pixels -->
      <span class="logo-mini"><b>MM</b></span>
      <!-- logo for regular state and mobile devices -->
      <span class="logo-lg"><b>SISWEB</b>MM</span>
    </a>
    <!-- Header Navbar: style can be found in header.less -->
    <nav class="navbar navbar-static-top">
      <!-- Sidebar toggle button-->
      <a href="#" class="sidebar-toggle" data-toggle="push-menu" role="button">
        <span class="sr-only">Toggle navegação</span>
      </a>

      <div class="navbar-custom-menu">
        <ul class="nav navbar-nav">
          <!-- Messages: style can be found in dropdown.less-->
          <li class="dropdown messages-menu">
            <a href="http://mmtransportesseguro.com.br/webmail" target="_blank">
              <i class="fa fa-envelope-o"> Acessar Webmail</i>
             
            </a>
            
          </li>
          
        
          <!-- User Account: style can be found in dropdown.less -->
          <li class="dropdown user user-menu">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">
             
             <!-- <img src="colocar a imagem" class="user-image"   /> -->
             
             <?php echo '<img src="data:image/png; base64,'.base64_encode($_SESSION['usuarioImagem']).'" class="user-image" alt="User Image"/>'; ?>
				
			
              <span class="hidden-xs"><?php
		  
		
			  
			  echo "Usuário: ".$_SESSION['usuarioNome'];
			 
		  
		  
				  ?></span>
            </a>
            <ul class="dropdown-menu">
              <!-- User image -->
              <li class="user-header">
               
               
                <?php echo '<img src="data:image/png; base64,'.base64_encode($_SESSION['usuarioImagem']).'" class="img-circle" alt="User Image"/>'; ?>

               
                <p><span>
                 <?php echo "Cargo: ".$_SESSION['usuarioCargo'];
			  ?></span>
                  
                  <small><?php echo "Membro desde: ".$_SESSION['usuarioCreated'];
			  ?></small>
                </p>
                
              </li>
              <!-- Menu Body -->
              
              <!-- Menu Footer-->
              <li class="user-footer">
                <div class="pull-left">
                  <a href="#" class="btn btn-default btn-flat">Perfil</a>
                </div>
                <div class="pull-right">
                  <a href="loginsistema.php" class="btn btn-default btn-flat">Sair</a>
                </div>
              </li>
            </ul>
          </li>
          <!-- Control Sidebar Toggle Button -->
          <li>
            
        </ul>
      </div>
    </nav>
    
    
    
  </header>
  <!-- Left side column. contains the logo and sidebar -->
  <aside class="main-sidebar">
    <!-- sidebar: style can be found in sidebar.less -->
    <section class="sidebar">
      <!-- Sidebar user panel -->
      <div class="user-panel">
        <div class="pull-left image">
         
         <?php echo '<img src="data:image/png; base64,'.base64_encode($_SESSION['usuarioImagem']).'" class="img-circle" alt="User Image"/>'; ?>
          
        </div>
        <div class="pull-left info">
         
          <p> <?php echo "Olá ".$_SESSION['usuarioNome'];
			  ?>
      	</p>
          <a href="#"><i class="fa fa-circle text-success"></i> Online</a>
        </div>
      </div>
     
      
      <!-- sidebar menu: : style can be found in sidebar.less -->
      <ul class="sidebar-menu" data-widget="tree">
        <li class="header">Menu de navegação</li>
        <li class="active treeview">
          <a href="#">
            <i class="fa fa-dashboard"></i> <span>Paineis</span>
            <span class="pull-right-container">
              <i class="fa fa-angle-left pull-right"></i>
            </span>
          </a>
          <ul class="treeview-menu">
             <li class="active"><a href="painel.php"><i class="fa fa-circle-o"></i> Painel perfil 1</a></li>
            
          </ul>
        </li>
        
       <li class="treeview">
          <a href="#">
            <i class="fa fa-edit"></i> <span>Cadastros</span>
            <span class="pull-right-container">
              <i class="fa fa-angle-left pull-right"></i>
            </span>
          </a>
          <ul class="treeview-menu">
            <li><a href="cadastro_usuario.php"><i class="fa fa-circle-o"></i> Usuário</a></li>
            <li><a href="#"><i class="fa fa-circle-o"></i> Clientes</a></li>
            <li><a href="#"><i class="fa fa-circle-o"></i> Fornecedores</a></li>
            <li><a href="#"><i class="fa fa-circle-o"></i> Veículos</a></li>
            <li><a href="#"><i class="fa fa-circle-o"></i> Centro de Custo</a></li>
		   </ul>
        </li>

        <li class="treeview">
          <a href="#">
            <i class="fa fa-table"></i> <span>Consultas</span>
            <span class="pull-right-container">
              <i class="fa fa-angle-left pull-right"></i>
            </span>
          </a>
          <ul class="treeview-menu">
            <li><a href="consulta_usuario.php"><i class="fa fa-circle-o"></i> Usuários</a></li>
            <li><a href="pages/tables/data.html"><i class="fa fa-circle-o"></i> Veículos</a></li>
          </ul>
        </li>

        <li class="header">Rótulos</li>
        <li><a href="#"><i class="fa fa-circle-o text-red"></i> <span>Importante</span></a></li>
        <li><a href="#"><i class="fa fa-circle-o text-yellow"></i> <span>Aviso</span></a></li>
        <li><a href="#"><i class="fa fa-circle-o text-aqua"></i> <span>Informações</span></a></li>
      </ul>
    </section>
    <!-- /.sidebar -->
  </aside>


  <!-- Content Wrapper. Contains page content -->
  <div class="content-wrapper">
    <!-- Content Header (Page header) -->
    <section class="content-header">
      <h1>
        Cadastros
        <small>Cadastro de usuário</small>
        
      </h1>
      <ol class="breadcrumb">
        <li><a href="#"><i class="fa fa-dashboard"></i> Inicio</a></li>
        <li class="active">Painel</li>
      </ol>
    </section>

    <!-- Main content -->
    <section class="content">
     
                
                <!-- Colocar aqui o conteudo da pagina -->
                
             <form class="form-horizontal" method="post" action="Processa/processa_cad_usuario.php">;
             
  <div class="form-group">
    <label for="inputEmail3" class="col-sm-2 control-label">Nome</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" name="nome" placeholder="Nome Completo" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Email</label>
    <div class="col-sm-10">
      <input type="email" class="form-control" name="email" placeholder="Email" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Cargo</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" name="cargo" placeholder="Cargo" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Imagem 160 x 160</label>
    <div class="col-sm-10">
      <input type="file" class="image" name="imagem" >
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">login</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" name="login" placeholder="Usuário" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Senha</label>
    <div class="col-sm-10">
      <input type="password" class="form-control" name="senha" placeholder="Senha" maxlength="8" required="required">
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Nível de Acesso</label>
    <div class="col-sm-10">
      <select class="form-control" name="nivel_acesso_id" required>
  <option value="1"></option>    
  <option value="1">Administrador</option>
  <option value="2">Colabores</option>
  
</select>
      
    </div>
  </div>
  
  <div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">Data de Cadastro</label>
    <div class="col-sm-10">
      <input type="date" class="form-control" name="created" placeholder="Data de Cadastro" required="required">
    </div>
  </div>


  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <button type="submit" class="btn btn-primary">Cadastrar</button>
    </div>
  </div>
</form>
                
 
        </section>

        <!-- right col -->
      </div>
      <!-- /.row (main row) -->

    <!-- /.content -->

  <!-- /.content-wrapper -->
  <footer class="main-footer">
    <div class="pull-right hidden-xs">
      <b>Versão</b> 2.4.0
    </div>
    <strong>Copyright &copy; 2017-2018 <a href="https://adminlte.io">MM Transportes</a>.</strong> Todos os direitos reservados.
  </footer>

  <!-- Control Sidebar -->
 
  <!-- /.control-sidebar -->
  <!-- Add the sidebar's background. This div must be placed
       immediately after the control sidebar -->
  <div class="control-sidebar-bg"></div>
<!-- ./wrapper -->

<!-- jQuery 3 -->
<script src="bower_components/jquery/dist/jquery.min.js"></script>
<!-- jQuery UI 1.11.4 -->
<script src="bower_components/jquery-ui/jquery-ui.min.js"></script>
<!-- Resolve conflict in jQuery UI tooltip with Bootstrap tooltip -->
<script>
  $.widget.bridge('uibutton', $.ui.button);
</script>
<!-- Bootstrap 3.3.7 -->
<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<!-- Morris.js charts -->
<script src="bower_components/raphael/raphael.min.js"></script>
<script src="bower_components/morris.js/morris.min.js"></script>
<!-- Sparkline -->
<script src="bower_components/jquery-sparkline/dist/jquery.sparkline.min.js"></script>
<!-- jvectormap -->
<script src="plugins/jvectormap/jquery-jvectormap-1.2.2.min.js"></script>
<script src="plugins/jvectormap/jquery-jvectormap-world-mill-en.js"></script>
<!-- jQuery Knob Chart -->
<script src="bower_components/jquery-knob/dist/jquery.knob.min.js"></script>
<!-- daterangepicker -->
<script src="bower_components/moment/min/moment.min.js"></script>
<script src="bower_components/bootstrap-daterangepicker/daterangepicker.js"></script>
<!-- datepicker -->
<script src="bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js"></script>
<!-- Bootstrap WYSIHTML5 -->
<script src="plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.all.min.js"></script>
<!-- Slimscroll -->
<script src="bower_components/jquery-slimscroll/jquery.slimscroll.min.js"></script>
<!-- FastClick -->
<script src="bower_components/fastclick/lib/fastclick.js"></script>
<!-- AdminLTE App -->
<script src="dist/js/adminlte.min.js"></script>
<!-- AdminLTE dashboard demo (This is only for demo purposes) -->
<script src="dist/js/pages/dashboard.js"></script>
<!-- AdminLTE for demo purposes -->
<script src="dist/js/demo.js"></script>
</body>
</html>

Segue o codigo conexao.php.

 

<?php


$servidor='localhost';
$usuario='root';
$senha='vertrigo';
$bancodedados='loginsiswebmm';


$conectar = mysqli_connect ($servidor, $usuario, $senha, $bancodedados);

if (mysqli_connect_errno())
{
	die ('Houve o seguinte erro:' .mysqli_connect_errno());
	exit();
	
}


?>

Segue também em anexo o erro que esta dando.

 

Desde já agradeço.

erros.png

Link para o comentário
Compartilhar em outros sites

  • Moderador

@Marcelo Mousinho Provavelmente você não informou ao  elemento FORM que você está enviando um arquivo  também.

 

Adicione esta linha no form:  enctype="multipart/form-data"

 

Desta forma:

<form action="/home/uploadfiles" method="post" enctype="multipart/form-data">
    <label for="file">Filename:</label>
    <input type="file" name="file" id="file" />
    <input type="submit" name="submit" value="Submit" />
</form>

Se você não informa que vai emitir um arquivo,  no php o comando:  $_FILE[]  não recebe o arquivo.

adicionado 2 minutos depois

Além disso não é só simplesmente fazer o upload.  Você deve pegar o nome final do arquivo( não o temp) e registrar em um campo no banco de dados.

 

Assim, quando for fazer o select dos dados e da imagem,  você traz do banco o nome do arquivo por exemplo foto.jpg   e insere no src .

 

Por isso, altere também a linha que mencionei onde você coloca uma imagem criptografada. 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!