[Vídeo] Curso de PHP - Review das aulas 1-13 (Tudo o que foi aprendido)

Para você que acompanhou o nosso pequeno curso de PHP até aqui, chegou a hora de testar seus conhecimentos e rever tudo o que já aprendeu.

Só para relembrar um pouco, veja abaixo todas as aulas que já criamos até o presente momento:

Aulas anteriores

Veja o que você já aprendeu aqui no TEO:

Criei um vídeo onde desenvolvi um sistema de login bem básico, mas que passa pela maioria das aulas anteriores, assim você poderá perceber melhor como integrar várias funções no mesmo script para desenvolver seus produtos, assista abaixo.

Criando um sistema de login super básico com PHP


Veja o script que criamos abaixo:

# 
###########################################################
#
# ESTE SCRIPT MOSTRA UM RESUMO DE TODAS AS AULAS QUE
# TIVEMOS ATÉ O MOMENTO EM NOSSO PEQUENO CURSO DE PHP
# PROVIDO PELO SITE TODO ESPAÇO ONLINE.
# 
# VOCÊ IRÁ ENCONTRAR UM LINK PARA CADA UMA DAS AULAS NOS
# COMENTÁRIOS DE CADA SESSÃO.
#
# ESTE SCRIPT FOI CRIADO APENAS PARA FINS EDUCACIONAIS E 
# PODE PARECER DESORGANIZADO PARA PROGRAMADORES AVANÇADOS.
# 
# ESTAMOS APENAS MOSTRANDO QUE, COM TUDO O QUE FOI APRENDIDO
# NOSSO LEITOR JÁ É CAPAZ DE CRIAR UM PEQUENO SCRIPT PARA 
# CERTAS FUNÇÕES DO SEU DIA-A-DIA.
# 
# INICIAREMOS AS PARTES MAIS AVANÇADAS POSTERIORMENTE!
# 
# OBS.: O TEO NUNCA COBRA POR NENHUM ARTIGO OU TUTORIAL
# PORTANTO, ESTE SCRIPT E TODO O CONTEÚDO DO CURSO É GRATUITO
# PARA QUALQUER PESSOA.
# 
# Luiz Otávio - Administrador de redes (Todo Espaço Online)
# todoespacoonline@gmail.com
# 
###########################################################
#
# Aula 1
# Montando o Servidor PHP 
# http://www.todoespacoonline.com/al___1593
# 
###########################################################
#
# Aula 2
# Entendendo scripts em PHP
# http://www.todoespacoonline.com/al___1594
# 
###########################################################
#
# Aula 3
# Criando as variáveis necessárias
# http://www.todoespacoonline.com/al___1594
#

// Algumas das variáveis abaixo serão criadas com valores booleanos
// falsos (false).
// Quando precisarmos, modificaremos seus valores para 
// verdadeiro (true)

// Formulário para login
$form 	=	<<<EOT
	<form action="" method="post">
	
		<label for="usuario">	User						</label><br />
		<input name="usuario" 	type="text"		value=""		/>	<br />
	
		<label for="senha">		Password					</label><br />
		<input name="senha" 	type="password"	value=""		/>	<br />
	
		<input name="enviar" 	type="submit"	value="Entrar"	/>	<br />
		
	</form>
EOT;

// Variáveis para checar se o usuário esta logado, inicialmente
// com valores falsos
$loggedin				=	false;
$skipSessionNCookies	=	false;

/// ALTERE OS VALORES ABAIXO
// Troque:
// localhost - pelo seu servidor
// root - pelo usuário com permissões no seu bd
// password - pela senha do usuário
// db - pelo nome do seu bd

/* ############# DADOS DA TABELA ###################

CREATE TABLE `curso`.`login2` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`usuario` varchar(255) NULL DEFAULT NULL,
`senha` varchar(255) NULL DEFAULT NULL,
PRIMARY KEY (`id`)
);

#####################################################*/

// Para mais detalhes, acessa o link da Aula 13
$host 		=	 	'localhost';
$user 		=		'root';
$password	=		''; 
$db			=		'curso';

###########################################################
#
# Aula 4
# Constantes
# http://www.todoespacoonline.com/al___1619
# 
###########################################################
#
# Aula 5
# Tipos de dados
# http://www.todoespacoonline.com/al___1670
# 
###########################################################
#
# Aula 6
# Arrays
# http://www.todoespacoonline.com/al___1766
# 
###########################################################
#
# Aula 7
# Operadores
# http://www.todoespacoonline.com/al___1770
# 
###########################################################
#
# Aula 8
# IF, ELSE e ELSEIF
# http://www.todoespacoonline.com/al___1935
# 

// Vamos checar se o $_POST do formulário está setado.
// Estamos utilizando o operador && (Veja o link da Aula 7)
// para maiores informações.

if	(
		isset($_POST['usuario']) &&
		isset($_POST['senha'])	 &&
		isset($_POST['enviar'])
	)
{
	// Termina de setar mais variáveis
	$usuario	=	$_POST['usuario'];
	$senha		=	$_POST['senha'];
	$enviar		=	false;
}

###########################################################
#
# Aula 9
# For, foreach, while e do while
# http://www.todoespacoonline.com/al___1955
#

// Checando se temos as variáveis para continuar
// utilizando comparação if, veja o link da Aula 8.

if	(
		isset($usuario) &&
		isset($senha) 	&&
		isset($enviar)
	)
{
	// Tratamos os valores
	$usuario	= trim(addslashes($usuario));	
	$senha		= trim(addslashes($senha));	
	$enviar		= false;	
	// Variável estratégica :)
	$checked	= true;	
}
 
###########################################################
#
# Aula 10
# Cookies e sessões
# http://www.todoespacoonline.com/al___1964
#

// Checando se os valores de usuário e senha estão
// preenchidos corretamente com a variável estratégica
// hahaha
if( isset($checked) )
{
	// Agora checando
	if	(
			!empty($usuario) &&
			!empty($senha)
		)
	{	
		// Mais uma variável estratégica
		$perfect = true;
	}
	else
	{
		// Morre aqui
		exit("Existem campos em branco!");	
	}
}

###########################################################
#
# Aula 11
# Datas
# http://www.todoespacoonline.com/al___1967
# 

// Data de execução do script (data atual)
$data = date("d/m/Y H:i:s");

###########################################################
#
# Aula 12
# $_GET e $_POST
# http://www.todoespacoonline.com/al___1976
# 

// UTILIZAMOS GET E POST NA PARTE SOBRE IF, 
// ELSE E ELSEIF, UM POUCO ACIMA.

###########################################################
#
# Aula 13
# Conectando e obtendo valores do banco de dados MySQL
# http://www.todoespacoonline.com/al___1988
#

// Agora vem a parte complicada, você pode pular algumas 
// partes se preferir. Vamos ter que checar a conexão
// em seguida checar se o banco de dados existe e 
// a tabela existem, assim como os campos de
// usuário e senha necessários para a continuação

// Utilizando aquela variável estratégica $perfect
if( isset($perfect) )
{
	// Tenta realizar a conexão
	$tryConnection = 		@mysql_connect($host, $user, $password);
	
	// Se conectar continua
	if( $tryConnection )
	{
		// Tentando selecionar o banco de dados
		$selDB 		= 		@mysql_select_db($db);
		
		// Checamos se selecionou o banco de dados
		if( $selDB )
		{
			
			// Consulta 
			$sql = "SELECT * FROM login WHERE usuario = '" . $usuario . "' AND senha = '" . $senha . "' ";
			// Executa a consulta
			$exe = @mysql_query($sql);
			
			// Checamos se a tabela está perfeita
			if( $exe )
			{
				
				// Checamos o número de valores obtidos
				$num = @mysql_num_rows( $exe );
				
				// Se for igual a 1, perfeito, usuário logado
				if( $num === 1 )
				{
					
					// Mensagem de sucesso
					$loggedin = true;
					
				}
				
				// Usuário ou senha inválidos
				else
				{
					
					// A mensagem que você quiser
					// Como:
					// Usuário ou senha inválidos
					// Ou qualquer coisa
					echo "Dados incorretos, tente novamente! <br />";
					
				}
				
			}
			
			// Se não
			else
			{
				
				// Morre aqui
				exit('Erro ao selecionar dados da tabela!');
				
			}
			
			
		}
		
		// Se não selecionar
		else
		{
			
			// Morre aqui
			exit("Erro ao selecionar o banco de dados!");	
		
		}
			
	}
	
	// Se não
	else
	{
		
		// Morre aqui
		exit("Erro ao conectar ao banco de dados!");	
	
	}
	
}

###########################################################
#

// Pulo do gato, hahaha
session_start();

// Só para não mostrar o formulário quando o usuário 
// estiver logado
if	(
		isset($_SESSION['usuario']) && 
		isset($_SESSION['senha'])
	)
{
	$loggedin 				= true;
	$skipSessionNCookies	= true;
}
else
{
	$skipSessionNCookies = false;
}

// Pode-se utilizar a variável $loggerin em qualquer arquivo
if	(
		$loggedin === true && 
		$skipSessionNCookies === false
	)
{
	
	// Finalizamos com as sessões e cookies
	
	// SESSOES 
	$_SESSION['usuario'] 	=	$usuario;
	$_SESSION['senha']		=	$senha;

	// COOKIES
	# setcookie('usuario',	$_SESSION['usuario'],	time()+60);
	# setcookie('senha', 		$_SESSION['senha'],		time()+60);
	
	// Os cookies estão comentados por que não tenho pretenção de
	// utilizá-los neste script, mas você pode alterá-los como 
	// preferir.

}

elseif( $loggedin === false )
{

	echo $form;	

}


// Ou se preferir (recomendável), utilize os cookies e/ou sessões
// Nos outros arquivos adicione na primeira linha "session_start();"
// Sem aspas
// Depois utilize as variáveis $_SESSION['usuario'] && $_SESSION['senha']
if	(
		isset($_SESSION['usuario']) && 
		isset($_SESSION['senha'])
	)
{
	echo $_SESSION['usuario'] . ' logado com sucesso!';

}

/*

Nunca se esqueça, este script não é totalmente seguro e não foi
analisado para que seja incluído em um aplcativo em produção.
Verifique cuidadosamente todas as linhas antes de publicar 
em seu aplicativo.

OBS.: Os dados de usuário não estão criptografados.

*/

A partir de agora vamos postar algo mais interessante e avançado, aguardo você para a próxima aula smiley.

Tags: Vídeo Curso PHP Review Aulas Tudo Aprendido


Comentários