Tech-Nation
Informática e Design

É necessário que registre-se ou conecte-se para ter total acesso ao fórum e seu conteúdo.

Sistema de Login em PHP

Ir em baixo

Sistema de Login em PHP

Mensagem por Needke em Dom Abr 18, 2010 5:58 pm

Para este tutorial é necessário criar as seguintes
paginas:


1. login.php
2. verificar.php
3. area_restrita.php
4. sair.php

Passos:

1. Criar
uma tabela chamada "membros" numa base-de-dados chamado "login", por exemplo.
2. Criar ficheiro login.php.
3. Criar ficheiro verificar.php.
4. Criar
ficheiro arear_estrita.php.
5. Criar ficheiro sair.php

Tutorial:

1.
Criar table "membros"

Utiliza esse código para a criação de uma table dentro da base-de-dados "login", utilizando o PhpMyAdmin no servidor!!




CREATE TABLE `membros` (
`id` int(4) NOT NULL auto_increment,
`username` varchar(65) NOT NULL default '',
`password` varchar(65) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;


Pronto!
Uma vez já criado, cada vez que adicionar um novo usuário terá que utilizar esse código manualmente no PhpMyAdmin!

INSERT INTO `members` VALUES (1, 'oteunome', 'atuapassword');

Onde está o campo vermelho, devem colocar o seu nome e a sua password no campo verde!


2. login.php
Crie um novo documento chamado "login.php" com o código:


Código:
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form name="form1" method="post" action="verificar.php">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td colspan="3"><strong>Member Login </strong></td>
</tr>
<tr>
<td width="78">Nome de Utilizador </td>
<td width="6">:</td>
<td width="294"><input name="myusername" type="text" id="myusername"></td>
</tr>
<tr>
<td>Password </td>
<td>:</td>
<td><input name="mypassword" type="text" id="mypassword"></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type="submit" name="Submit" value="Login"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>



3. verificar.php
Crie novamente um novo documento chamado "verificar.php".
Nessa etapa, existe toda a configuração essencial para conectar às base-de-dados para comparar os dados ao login!
Caso elas se coincidirem o utilizador será movido para a página restrita, caso contrário voltará à página de login xD



[code]$host="localhost"; // Geralmente o localhost funciona em 99,9%, caso contrário coloque IP do servidor
$username="utilizador"; // Coloque os dados do utilizador das base-de-dados do servidor!
$password=""; // Coloque aqui a password do utilizador para conectar à base-de-dados do seu servidor!
$db_name="test"; // É o nome da tabela, localizado no servidor, para conectar! Não modifique esse campo.
$tbl_name="members"; // Nome da tabela onde estão os dados para login!

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("Não foi possível conectar às base-de-dados!");
mysql_select_db("$db_name")or die("Não foi possível selecionar as base-de-dados!");

// username and password sent from form
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];

// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername= mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row

if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
session_register("myusername");
session_register("mypassword");
header("location:area_restrita.php");
}
else {
echo "O Nome de Utilizador ou Password estão incorrectos!";
}
?>



4. area_restrita.php
Crie um novo documento chamado "area_restrita.php"!
Nessa página deverá colocar todo documento protegido aos convidados!


<?
session_start();
if(!session_is_registered(myusername)){
header("location:main_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=utf-8" />
<title>Sistema de Login - Desenvolvido por Needke Works 2010</title>
</head>

<body style="text-align:center"><div style="color:#FF0000; font-size:36px; padding-top:40px;"><blink><strong># Àrea Restrita #</strong></blink></div>
Esse Sistema de Login foi desenvolvido por <a href="http://ajuda.forumeiros.com/profile.forum?mode=viewprofile&u=13034" target="_blank" >Needke Works 2010</a>!<br/>Obrigado pela sua preferêencia pelos nossos serviços :D<div style="padding-top:30% !important; text-align:right">Clique aqui para <a href="sair.php" target="_self">Sair</a> da conta!
</body>
</html>

Caso desejar proteger todas as outras páginas, não esqueça que deverá sempre adicionar esse pequeno código nos seus documentos em .php!


[code]session_start();
if(!session_is_registered(myusername)){
header("location:login.php");
}
?>[/code]


5. sair.php
Finalmente, chegamos ao final desse pequeno tutorial útil para um sistema de login.
Agora faltará apenas adicioanar uma nova página somente para deslogar da conta!


[code]
session_start();
session_destroy();
?>Saiu da conta com sucesso!
Muito Obrigado xD[/code]

Isto
significa que a secção irá ser desligada/apagada!
Atenção! A destruição da sessão apenas afecta nos cookies que estão guardados no seu computador.



Fim do
tutorial.


Espero que gostem e aproveitem ele!
Nesse tutorial não foi utilizado aquela função md5, mas poderão adicionar á vontade xD

Att, Needke
[/right]

Needke
       Membro nation

Pontos : 7
Reputação : 0
Mensagens : 3
Data de inscrição : 15/04/2010
100%

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Sistema de Login em PHP

Mensagem por Otto em Dom Abr 18, 2010 6:00 pm

Olá amigo

Muito bom este tutorial!

Cumprimentos,
#Kevin :king:
avatar
Otto
        Administrador
        Administrador

Masculino
Idade : 23
Pontos : 210
Reputação : 1
Mensagens : 107
Humor : cate (:
Localização : Portugal
Emprego/lazer : Estudante
Data de inscrição : 14/04/2010
100%
Portugal

Ver perfil do usuário http://tech-natioff.forumeiros.com

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum