sábado, 30 de junho de 2012

PHP: Como criar página com senha



Oi pessoal, vou estar ensinando aqui neste post como fazer uma página segura com PHP e MySQL, iremos criar uma página de login, usuario com nome e senha, uma página segura e uma página de logout.


Primeiro entre no PHPMyAdmin (se não tens server, baixe um aqui) e crie um novo banco de dados chamado "paginadb" (ou como queira chamá-la).

Agora vamos criar uma nova tabela chamada "usuarios". Copie o código abaixo na aba "SQL" do seu bd, vamos explicá-lo abaixo:

CREATE TABLE `paginadb`.`usuarios` (
`id_user` INT( 11 ) NOT NULL AUTO_INCREMENT ,
`nome` VARCHAR( 100 ) NOT NULL ,
`senha` VARCHAR( 100 ) NOT NULL ,
PRIMARY KEY ( `id_user` )
) ENGINE = MYISAM


  • A função "CREATE TABLE", cria a tabela ('usuarios' no caso) no banco de dados em aspas (no caso 'paginadb') 
  • 'id_user' INT (11) NOT NULL AUTO_INCREMENT = Cria o campo 'id_user', que será o nossa chave primária, ela ira se numerar automaticamente por causa da ação "AUTO_INCREMENT" (só pode haver uma dessa ação na tabela, isso define que ela é o índice); "INT (11)" significa o tipo do campo, neste caso ele só recebe números inteiros, e o número em parenteses "(11)" é a quantidade de caracteres que o campo suporta, e "NOT NULL" significa que o campo não é nulo.
  • 'nome' VARCHAR (100) NOT NULL = Cria o campo 'nome', que será onde ficará o nome do usuário cadastrado no site; "VARCHAR" é um outro tipo de campo, que pode conter de 0 a 255 caracteres variáveis, "(100)" é a quantidade de caracteres que podem ser gravados neste campo.
  • 'senha' VARCHAR (100) NOT NULL = Cria o campo 'senha', onde ficará a senha do usuário.
  • PRIMARY KEY ('id_user') = Ele define que a chave primária será o campo "id_user"
Agora já temos nossa tabela, vamos adicionar agora manualmente um usuario qualquer (em outro post explico como fazer uma página de cadastro). Vá na aba "SQL" de novo e adicione o seguinte código:

INSERT INTO `paginadb`.`usuarios` (
`id_user` ,
`nome` ,
`senha`
)
VALUES (
NULL , 'admin', 'admin123'
);

  • INSERT INTO 'paginadb'.'usuarios' = Está inserindo dentro do banco de dados "paginadb" e na tabela "usuarios" as informações seguintes.
  • 'id_user', 'nome', 'senha' = São os campos que receberão os valores informados.
  • VALUES ( NULL, 'admin', 'admin123' ); = Estes são os valores que entraram na tabela, na ordem de cada campo. No "id_user" entra o "NULL" porque ele já vai automaticamente adicionar um valor (pela ação "AUTO_INCREMENT"); "admin" entra no campo "nome", e "admin123" no campo "senha".
Pronto! Nossa tabela com um usuário já está criada, vamos a página de login. Crie uma página com o nome "login.php", e coloque o código:

<?php
$host = "localhost"; //Aqui informamos o host do banco de dados, pode ser localhost para qualquer um ou o nome do seu site
$user = "NOME"; //O nome de usuário do PHPMyAdmin
$senha = "SENHA"; //Sua senha do PHPMyAdmin
$db = "paginadb"; //Nome do seu Banco de Dados, no nosso caso "paginadb"


mysql_connect($host, $user, $senha) or die (mysql_error()); //Ele conecta com o bd através desta função
mysql_select_db($db) or die (mysql_error()); //Ele acessa o banco de dados e se não der certo devolve uma mensagem de erro
?>
<!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>Login Seguro</title>
<style type="text/css">
<!--
.style1 {font-family: Arial}
-->
</style>
</head>


<body>
<div align="center">
<form id="form1" name="form1" method="post" action="logar.php">
<table width="200" border="1">
  <tr>
        <td colspan="2"><div align="center" class="style1">Login seguro</div></td>
  </tr>
  <tr>
    <td width="53">Nome:</td>
    <td width="131"><input name="nome" type="text" id="nome" /></td>
  </tr>
  <tr>
    <td height="23">Senha:</td>
    <td><input name="senha" type="password" id="senha" /></td>
  </tr>
  <tr>
  <td colspan="2"><div align="center">
    <input type="submit" value="Entrar" />
  </div></td>
  </tr>
</table> </form>
</div>
</body>
</html>


Pronto! Está página irá enviar as informações para uma página que irá autenticar o login. Crie agora a página chamada "logar.php" e copie o código abaixo nela:

<?php
//Fazendo a conexão com o bd
$host = "localhost";
$user = "root";
$senha = "vertrigo";
$db = "paginadb";


mysql_connect($host, $user, $senha) or die (mysql_error());
mysql_select_db($db) or die (mysql_error());


//Conexão feita!


//Define o nome e a senha, recebidos pela página login.php
$nome  = $_POST['nome'];
$senha = $_POST['senha'];


//Seleciona os cadastros da tabela, e checa se o usuario realmente existe
$sql_logar = "SELECT * FROM usuarios WHERE nome = '$nome' && senha = '$senha'";
$exe_logar = mysql_query($sql_logar) or die (mysql_error());
$fet_logar = mysql_fetch_assoc($exe_logar);
$num_logar = mysql_num_rows($exe_logar);


if ($num_logar == 0){
   echo "Login ou senha inválido(s)."; //Caso não exista retorna esta mensgem
   echo "<br><a href='javascript:window.history.go(-1)'>Clique aqui para voltar.</a>";


}else{

   session_start(); //Inicia a sessão caso o usuario realmente exista
   $_SESSION['nome'] = $nome;
   $_SESSION['senha'] = $senha;
   header("Location:segura.php"); //Redireciona para a página segura
}
?>


Ok! Vamos agora para a página segura, crie a página "segura.php" e copie o código abaixo nela:

<?php
//Faz a conexão com o banco
$host = "localhost";
$user = "root";
$senha = "vertrigo";
$db = "paginadb";


mysql_connect($host, $user, $senha) or die (mysql_error());
mysql_select_db($db) or die (mysql_error());
//Termina a conexão
//Inclui a página que fará está página restrita para usuarios logados
include("restrito.php");


//Seleciona da tabela as informações do usuario
$sql_busca = "SELECT * FROM usuarios WHERE nome = '$usuario'";
$exe_busca = mysql_query($sql_busca) or die (mysql_error());
$fet_busca = mysql_fetch_assoc($exe_busca);


$nome        = $fet_busca['nome'];
?>
<!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>Local Seguro</title>
</head>


<body>
<div align="center">
<table width="471" border="1">
  <tr>
    <td width="461">Parabéns <? echo "$nome"; //Mostra o nome do usuario logado ?> você está em área segura! Está página só é acessível para pessoas logadas!</td>
    </tr>
  <tr>
    <td><div align="center"><a href="logout.php">Logout (sair)</a></div></td>
    </tr>
  <tr>
    <td>&nbsp;</td>
    </tr>
</table>
</div>
</body>
</html>


Vamos criar agora a página que fará a restrição à usuário logados. Crie a página "restrito.php" e copie o código abaixo:

<?php
@session_start(); //Checa se há sessão iniciada
if (isset($_SESSION['nome']) && isset($_SESSION['senha'])){ //Pega os valores do nome e senha
   $usuario = $_SESSION['nome']; //Cria uma váriavel com o nome do usuario
}
else { //Se a sessão não tiver sido iniciada ele redireciona para a página de login
   header("Location:login.php");
   exit();
}
?>



Pronto o sistema de página está criado! Agora vamos criar a página para desconectar o usuário da área segura. Crie a página "logout.php" e copie o código abaixo nela:

<?php
session_start(); //Pega a sessão iniciada
unset($_SESSION["nome"]); //Seleciona o nome
unset($_SESSION["senha"]); //Seleiona a senha
session_destroy(); //Destroi a sessão
header("location: login.php"); //Redireciona à página de login
?>


Agora você já tem um sistema de página segura completo! Nos próximos posts ensinaremos mais sobre páginas PHP!!! Fique ligado no Core Design!

Download: Vertrigo Server

Vertrigo Icon

Oi pessoal, estamos hoje recomeçando o blog Core Design, mas agora não só com templates para blogs, mas tudo para sites, e até para PC's...


Hoje tenho para apresentar à vocês um programa que simula no seu PC um servidor PHP/MySQL, com ele você pode testar seus sites e códigos no seu próprio PC (Windows) sem precisar de ter um site. Ele é um programa bem pequeno e é Freeware!
Uma pequena descrição do programa pelos criadores:
VertrigoServ foi desenvolvido para criar um fácil e altamente profissional instalador de Apache (servidor web - HTTP), PHP (lingagem de programaçăo dinâmica), MySQL (multithread, multi-utilizador, SQL Database Management System), SQLite (sistema de gestăo de bases de dados, de acordo com ACID), SQLiteManager (ferramenta web based para gerir as bases de dados SQLite), PhpMyAdmin (ferramenta escrita em PHP para administrar as bases de dados MySQL) e Zend Optimizer (que aumenta a performance em 40%) para a plataforma Windows. Com um único instalador, todos os componetes săo instalados num único directório e podem ser usados imediatamente após a instalaçăo.Um desinstalador permite remover o VertigoServ do disco rígido. Foi desenhado para ser o mais pequeno e flexivel possível, no entanto é altamente recomendado para distribuiçăo na Internet. VertrigoServ é excelente tanto para novatos como para utilizadores experientes.
Você pode baixá-lo pelo link abaixo, através do SourceForge:

domingo, 15 de janeiro de 2012

Styles 1

Nosso primeiro pacotinho de styles está ai gente, espero que gostem e desfrutem deles:


Link Direto

Render: Transformice

Hoje trago alguns renders do jogo Transformice, baixem-los aqui abaixo:




quinta-feira, 12 de janeiro de 2012

Template - BlueRock

Estamos aqui hoje postando o nosso primeiro template criado por Caio Ponce (eu), faça o download dele abaixo, com os PSDs:
Preview do BlueRock - Ver Online

Servidor Megaupload

domingo, 8 de janeiro de 2012

Render: Memes

Olá pessoal, hoje estamos aqui com uns renders das caras mais loucas que estão na Net! Para vc que deseja fazer uma tira ou ainda um design com eles, aqui estão:

Close Enough Meme:
Oh, God. Why? Meme:
I Lied Meme:
Feel like a sir Meme:
Bom por enquanto só estes mas aguarde até a 2 parte desta postagem...

quarta-feira, 4 de janeiro de 2012

Primeiro post do Blog

E ai pessoal! Aqui estamos nós com o primeiro post do Core Design, nós iremos ter muitas novidades aqui para vcs! Bem com este primeiro post irei colocar aqui o que muitos blogueiros de primeira viagem tentam fazer com seus blogs! Aqui o pequeno tutorial de como tirar a NavBar do blogger! Então vamos lá:

1º Passo:
Entre em sua conta do blogger e selecione seu blog.

2º Passo:
Clique em "Design" e depois em "Editar HTML"

3º Passo:
Segure "Crtl + F" no seu teclado e procure a tag "]]></b:skin>"

4º Passo:
Logo acima desta tag coloque o código:
#navbar-iframe{height: 0px; visibility: hidden; display: none;}

5º Passo:
Salve o seu template e PRONTO! Agora seu blog não tem mais a NavBar!

Qualquer dificuldade escrevam um comentário que iremos ter o prazer de Ajudar!

Twitter Delicious Facebook Digg Stumbleupon Favorites More