id 1 -1313
ACESSE SUA CONTA   |   facebook

Cadastre-se   //   Vantagens   //   Esqueci minha senha

logica do login







Manter conectado sim ou não

se manter conectado criar cokies

se fechar e abrir novamente - transformar cokies em session e não pedir para logar

se não crar o cokies - ao fechae e abri novamente pedir para logar

ao fechar uma pagina no Sair apagar os cokies

 

$sql = "SELECT * FROM usuario WHERE usuario = '$usuario' AND senha = '$senha'";
foreach ($pdo->query($sql) as $row) {
$usuario = $row['usuario'];
$senha = $row['senha'];
$nivel = $row['nivel'];
$idVisitante = $row['idUsuario'];
$isoLingua = $row['isoLingua'];
$isoDinheiro = $row['isoDinheiro'];

$_SESSION['usuarioLogin'] = $usuario;
$_SESSION['senhaLogin'] = $senha;
$_SESSION['nivel'] = $nivel;
$_SESSION['idVisitante'] = $idVisitante;
$_SESSION['isoLingua'] = $isoLingua;
$_SESSION['isoDinheiro'] = $isoDinheiro;
}


// Define cookies para manter o usuário conectado
// $token = bin2hex(random_bytes(32)); // Gera um token seguros
// Armazena o token no banco de dados associado ao usuário
$domain = $_SERVER['SERVER_NAME'];
setcookie('usuarioLogin', $usuario, time() + (86400 * 30), "/", $domain); // Expira em 30 dia
setcookie('idVisitante', $usuario, time() + (86400 * 30), "/", $domain); // Expira em 30 dia
setcookie('senhaLogin', $senhaLogin, time() + (86400 * 30), "/", $domain); // Expira em 30 dia
setcookie('nivel', $nivel, time() + (86400 * 30), "/", $domain); // Expira em 30 dia
setcookie('idVisitante', $idVisitante, time() + (86400 * 30), "/", $domain); // Expira em 30 dia
setcookie('isoLingua', $isoLingua, time() + (86400 * 30), "/", $domain); // Expira em 30 dia
setcookie('isoDinheiro', $isoDinheiro, time() + (86400 * 30), "/", $domain); // Expira em 30 dia

 

// Apaga os cookies especificando caminho e domínio
setcookie('usuarioLogin', '', time() - 1, '/', 'seu-dominio.com');
setcookie('senhaLogin', '', time() - 1, '/', 'seu-dominio.com');
setcookie('nivel', '', time() - 1, '/', 'seu-dominio.com');
setcookie('idVisitante', '', time() - 1, '/', 'seu-dominio.com');
setcookie('isoLingua', '', time() - 1, '/', 'seu-dominio.com');
setcookie('isoDinheiro', '', time() - 1, '/', 'seu-dominio.com');

 

 

 

 

 

// Protege contra SQL Injection usando prepare
$sql = "SELECT * FROM usuario WHERE usuario = :usuario AND senha = :senha";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':usuario', $usuario);
$stmt->bindParam(':senha', $senha);
$stmt->execute();

// Verifica se achou o usuário
if ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$_SESSION['usuarioLogin'] = $row['usuario'];
$_SESSION['nivel'] = $row['nivel'];
$_SESSION['idVisitante'] = $row['idUsuario'];
$_SESSION['isoLingua'] = $row['isoLingua'];
$_SESSION['isoDinheiro'] = $row['isoDinheiro'];

// Define cookies se 'manter conectado' estiver ativo
if (isset($lem_senha) && $lem_senha == 'sim') {
$domain = $_SERVER['SERVER_NAME'];
$expira = time() + (86400 * 30); // 30 dias

setcookie('usuarioLogin', $_SESSION['usuarioLogin'], $expira, "/", $domain);
setcookie('idVisitante', $_SESSION['idVisitante'], $expira, "/", $domain);
setcookie('nivel', $_SESSION['nivel'], $expira, "/", $domain);
setcookie('isoLingua', $_SESSION['isoLingua'], $expira, "/", $domain);
setcookie('isoDinheiro', $_SESSION['isoDinheiro'], $expira, "/", $domain);
}
} else {
// login inválido
echo "Usuário ou senha incorretos.";
}



Fonte:

Autor do blog: Nilton Romani

id 2 -1313
Voltar
Compartilhar
Facebook Twitter YouTube Feed de notícias
Coleções de Cédulas e Moedas Brasileiras © 2014. Todos os direitos reservados.