Jump to content


Photo

Login Por Ip Php + Mysql


  • Faça o login para participar
2 replies to this topic

#1 Xplosion

Xplosion

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado

Posted 19/10/2008, 16:43

Hoje tive uma ideia meio maluca! Gosto de limpar os Cookies toda hora, só que toda vez que eu fazia isso delogava, ae pensei em fazer login por ip ^^ Ta ae no que deu !

OBS: Nunca fiz um sitema de login antes e só mexi uma vez com MySQL então com certeza isso porderá ser melhorado!

Aqui você coloca os dados do sever^^

db.php

<?php //Endereço do Host MySQL$hostname = 'localhost';//nome de usuario$username = 'root';//senha do usuario$senha = '';//banco de dados desejado$banco = '';//faz a cenexão$db = mysql_connect ($hostname, $username, $senha);mysql_select_db ($banco, $db);?>

Aqui o arquivo de login

login.php

<!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=iso-8859-1" /><title>Autenticação Simples de Usuário</title></head>       <body><form action="autentifica.php" name="autenticacao" method="post"><table style="width:100%; height:100%; border:0px; text-align:center"><tr><td><table width="200" border="0" align="center"><tr><td width="50">Login:</td><td width="140"><input type="text" name="login" size="20" maxlength="20" /></td></tr><tr><td>Senha:</td><td><input type="password" name="senha" size="20" maxlength="8" /></td></tr><tr><td colspan="2"><input type="submit" name="entra" value="Entrar" /></td></tr></table></td></tr></table></form></body></html>

Faz o Logof

logof.php

<?phpinclude('db.php');$ip = getenv("REMOTE_ADDR");mysql_query("UPDATE usuarios_registrados Set ip='0000000000' Where ip='$ip'");header("Location:login.php");?>

Autentifica o Usuario

autentifica.php


Formulario de Registro

register.php

<!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=iso-8859-1" /><title>Registrando Usuário</title></head><body><form action="registra.php" name="autenticacao" method="post">Nick: <input type="text" name="nick" size="20" maxlength="30"><br>Login: <input type="text" name="login" size="20" maxlength="30"><br>Senha: <input type="password" name="senha" size="20" maxlength="30"><br>Email: <input type="text" name="email" size="20" maxlength="300"><br><input type="submit" name="cadastrar" value="Cadastrar" /></form></body></html>

Recebe Formulario de Registro

registra.php


index de virificação para ver se funciona ne?

index.php

<?php//Inclui o arquivo de verificação, inclua nas paginas que deseja que o usuario veja só logadoinclude_once("verifica.php");?><!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=iso-8859-1" /><title>Index de teste</title></head>       <body><div>Olá : <?php $ip = getenv("REMOTE_ADDR");//conecta ao Banco de dadosinclude('db.php');$resultado = @mysql_query("SELECT* FROM usuarios_registrados WHERE ip='$ip'");while ($sql = @mysql_fetch_array($resultado)){//pega todos os dados do usuario e é amazendado em variaveis $login, $senha, $nick, $email e $ip$nick = $sql["nick"]; $login = $sql["login"]; $senha = $sql["senha"]; $email = $sql["email"]; $ip = $sql["ip"];//exibi dados das variaveisecho "Seu nick é <b>".$nick."</b><br>Sua senha é <b>".$senha."</b><br>Seu login é <b>".$login."</b><br>Seu email é <b>".$email."</b><br>Seu ip é <b>".$ip."</b>";}?></div><br /><br /><a href="logof.php">Sair</a><br /><br /><br /><a href="register.php">registra novo menbro</a></body></html>

Verifica se o usuario esta logado

verifica.php

<?php$ip = getenv("REMOTE_ADDR");include("db.php");$Busca = mysql_query("SELECT* FROM usuarios_registrados WHERE ip='$ip'");if(mysql_num_rows($Busca) == 0){header("Location:login.php");}?>

Tabela.sql

CREATE TABLE `usuarios_registrados` (  `login` varchar(300) NOT NULL,  `senha` varchar(300) NOT NULL,  `nick` varchar(300) NOT NULL,  `email` varchar(300) NOT NULL,  `ip` varchar(300) NOT NULL) ENGINE=MyISAM DEFAULT CHARSET=latin1;INSERT INTO `usuarios_registrados` VALUES('admin', 'admin', 'Adiministrador', 'animes-msn@hotmail.com', '0000000000');

Login: admin
Senha: admin


O bom disso que so deloga só se vc trocar o ip, e nem loga duas pessoas na mesma conta no mesmo tempo!

Baixe o script completo Aqui! Attached File  Login.zip   3.98KB   77 downloads

Edição feita por: Xplosion, 19/10/2008, 20:02.


#2 Dudu

Dudu

    Viva la vida

  • Usuários
  • 1437 posts
  • Sexo:Masculino
  • Localidade:Uberlândia - MG
  • Interesses:PHP

Posted 19/10/2008, 17:03

Movido para Área correta!
Até mais ^_^

Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Moderador


Twitter: HostCheap


#3 lucianoalv

lucianoalv

    Novato no fórum

  • Usuários
  • 1 posts
  • Sexo:Não informado

Posted 09/12/2008, 08:28

Me desculpem. Eu sou estagiário em desespero, novato, e ignorante por consequência em PHP, por isso tenho três dúvidas:

Qual a função do email animes-msn@hotmail.com neste sistema? Posso usar meu email?

Onde eu vou indicar a página que o login e a senha irá se direcionar?

Em que arquivo eu tenho acesso aos logins e senhas cadastrados?

Fico aguardando a resposta. Grato.




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq