Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá preciso criar um login com niveis de acesso, por enquanto o login acessa normal, mas ao ter acess_level = 1 eu queria que ele fosse redirecionado para o dashboard
meu codigo do login!
<?php
session_start();
include('conexao.php');
if(empty($_POST['usuario']) || empty($_POST['senha'])) {
header('Location: login.php');
exit();
}
$usuario = mysqli_real_escape_string($conexao, $_POST['usuario']);
$senha = mysqli_real_escape_string($conexao, $_POST['senha']);
$query = "select usuario from usuario where usuario = '{$usuario}' and senha = md5('{$senha}')";
$result = mysqli_query($conexao, $query);
$row = mysqli_num_rows($result);
if($row == 1) {
$_SESSION['usuario'] = $usuario;
header('Location: index.php');
exit();
} else {
$_SESSION['nao_autenticado'] = true;
header('Location: ERROR.php');
exit();
}
Primeiramente sugiro o uso de PDO ao invés do mysqli.
Segundo, faça um tratamento melhor (mais refinado) do que entra em sua aplicação isso aqui não lhe traz segurança alguma, dar para quebrar o php e exibir o código em tela expondo seu código fonte (fora o XSS e sql-inject):
>
23 horas atrás, groudon900 disse:
swi>
Citar
DICA**
Quando em sua aplicação houver dados mais sensíveis de acesso por exemplo administrativo, prefira usar uma cessão específica para esses tipos de usuários.
Porque uma SESSION pode ser falsificada então qualquer um pode entrar como administrador em sua aplicação.
Exemplo:
if ($valor_do_nivel_na_coluna >= 5) { // Supondo que 5 seja o administrador