Olá usuário , seja muito bem vindo ao nosso fórum !

Se esta visitando nosso fórum e de alguma forma nós te ajudamos com algum tutorial, download, espero que colabore com a gente se registrado no fórum que não leva mais que 1 minuto.

Outras formas de colaborar com o nosso fórum:

-> Se logando apos o registro.
-> Entrando diariamente.
-> Postando novos conteúdos no fórum como tutoriais, downloads, piadas, memes, notícias, vídeos, etc..
-> Leia nossas regras e participe de nossas promoções.

Até mais , aguardo seu registro e sua colaboração com o fórum.

Você não está conectado. Conecte-se ou registre-se

[Tutorial] PHP - Sistema de usuário simples

Ir em baixo  Mensagem [Página 1 de 1]

1 [Tutorial] PHP - Sistema de usuário simples em Qua Out 12, 2011 9:56 pm

!skipper

avatar
RBFounder

RBFounder
Bem, irei ensinar a criar um Sistema de Usuário Simples.

Primeiro, criaremos o BANCO DE DADOS...
O que é Banco de dados mysql? O MySQL é um dos sistemas de gerenciamento de banco de dados mais populares que existe e, por ser otimizado para aplicações Web, é amplamente utilizado na internet (Fonte: InfoWester).

No mínimo, iremos precisar de um username e de uma password por utilizador. O nosso banco de dados, poderá ser feita da seguinte forma:

Código:
CREATE TABLE users (
userid int NOT NULL PRIMARY KEY AUTO_INCREMENT,
username varchar(50) NOT NULL UNIQUE,
password varchar(40) NOT NULL
)
Com este comando, criaremos uma tabela chamada users, que possui 3 colunas: userid, que irá indentificar o usuário na base de dados; username, que irá conter o nome de habbo, limitado a 50 caracteres; e password, vai conter a senha em SHA1.

O tamanho do campo password é 40 caracteres, porque este é o número de caracteres devolvidos pela função SHA1. Não é necessário alterar este tamanho, mas se for necessário, nunca deve ser < 40.

Agora, iremos adicionar alguns usuários a base de dados.
Código:
INSERT INTO users (username,password) VALUES ('PierreAndreis', SHA1('1234'));
Este comando insere na tabela um utilizador com o usuario PierreAndreis e com a palavra-passe 1234, que está codificado pelo SHA1, e com isso irá gerar a senha 7110eda4d09e062aa5e4a390b0a572ac0d2c0220.

Criar uma página para login

Definida a nossa base de dados, vamos criar uma página de login muito simples.
Código:
login.php
<html>
<head>
<title>Login básico com PHP</title>
</head>
<body>
<form action="processaLogin.php" method="POST">
<p>Username: <input type="text" name="username" /></p>
<p>Password: <input type="password" name="password" /></p>
<p><input type="submit" name="submit" value="Login" /></p>
</form>
</body>
</html>

Agora, iremos criar uma página que irá verificar se o login está certo ou errado:
Código:
processaLogin.php
<?php
// começar ou volta para uma sessão
session_start();

// se vier um pedido para login
if (!empty($_POST)) {

// estabelecer ligação com a base de dados
mysql_connect('hostsql', 'username', 'password') or die(mysql_error());
mysql_select_db('basedados');

// receber o pedido de login com segurança
$username = mysql_real_escape_string($_POST['username']);
$password = sha1($_POST['password']);

// verificar o utilizador
$login = mysql_query("SELECT userid, username FROM users WHERE username = '$username' AND password = '$password'");

if ($login && mysql_num_rows($login) == 1) {

// o utilizador está certo
// guardamos as suas informações numa sessão
$_SESSION['id'] = mysql_result($login, 0, 0);
$_SESSION['username'] = mysql_result($login, 0, 1);

echo "<p>Sessão iniciada com sucesso como {$_SESSION['username']}</p>";
} else {

// falhou o login
echo "<p>Habbo ou senha invalidos. <a href="login.php">Tente novamente</a></p>";
}
}
?>

Basta substituir a informação do MySQL pra sua... Expliquei no código

Criar uma página para verificar se tudo está certo
Vamos agora criar uma página que exige a session: se o habbo não tiver sessão iniciada, não pode acessar a página.

Código:
verificarLogin.php
<?php
// iniciar uma sessão
session_start();

if (empty($_SESSION['id'])) {

// não existe sessão iniciada
// neste caso, levamos o habbo para a página de login
header('Location: login.php');
exit();
}
?>

Este script vai ser incluído em todas as páginas que queremos ver protegidas. Iremos usar o código requires para carregar o script que verifica se a sessão está ou não correta. Um exemplo:
Código:
teste.php
<?php
// pagina protegida, incluir script de verificação de login
require 'verificarLogin.php';
?>

<h1>Página protegida!</h1>
<p>Olá <u><?php echo $_SESSION['username']; ?></u>, esta é a página protegida</p>
<p><a href="logout.php">Terminar sessão</a></p>

Logout
Esta página serve para terminar a sessão...
Código:
logout.php
<?php
// inicia às sessões
session_start();

// para terminar uma sessão, apenas é necessário destruí-la
session_destroy();

// redirecionar o habo para outra página, login.php por exemplo
header('Location: login.php');
?>

REGISTRO

éer... eu esqueci do registro :/

Bem, aqui vai o formulário de registro :
Código:
registro
<form method="post" action="reg.php">
Habbo:

<input type="text" name="habbo" />

Senha:

<input type="password" name="senha" />

Senha novamente:

<input type="password" name="senhac" />



<input type="submit" value="Registrar-se" />
</form>

Pronto! Agora iremos criar a página que se registra:
Código:
reg.php

<?php
mysql_connect('hostsql', 'username', 'password') or die(mysql_error());
mysql_select_db('basedados');
// Primeiro transformamos todos os dados em html, para evitar fraudes
$r_user = htmlentities($_POST['habbo'], ENT_QUOTES);
$r_pass = htmlentities(sha1($_POST['senha']), ENT_QUOTES);
$r_pass_c = htmlentities(sha1($_POST['senhac']), ENT_QUOTES);

//Aqui ele verifica se os campos não estão vazios ou se as senhas digitadas estão iguais.

if($r_user != "") {
if($r_mail != "") {
{
if($r_pass != "") {
if($r_pass === $r_pass_c) {
//Se tudo estiver certo, ele cria o banco de dados
mysql_query("INSERT INTO users(usuario,password) VALUES('$r_user','$r_pass')") or die(mysql_error());
echo 'Você se registrou com exito. Agora pode logar com usuario e senha';
} else {
echo 'As senhas não coinciden.<br /><a href="history.back();return false;"<< Voltar</a>';
}
} else {
echo 'Você deve definir uma senha.<br /><a href="history.back();return false;"<< Voltar</a>';
}
} else {
echo 'Você deve inserir um email.<br /><a href="history.back();return false;"<< Voltar</a>';
}
} else {
echo 'Você deve definir um Habbo.<br /><a href="history.back();return false;"<< Voltar</a>';
}
?>

Bom e isto , demorei para fazer este tutorial e espero que gostem !

Créditos : sasuky ( editei uns 90 % códigos que estavam com bugs,texto...)



Ver perfil do usuário http://www.thunderzone.co.cc

Voltar ao Topo  Mensagem [Página 1 de 1]

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