Professional Documents
Culture Documents
CriandoumsistemadecadastroelogincomPHPeMySql
Pesquisar
LOGIN
DesenvolvimentoPHP
CriandoumsistemadecadastroelogincomPHPe
MySql
Nesteartigovamosaprenderacriarumsistemadecadastroeloginbemsimples,utilizandoPHPeMySQL.
Vamosvertambmalgunsconceitosdecriptografiamd5ecookies.
porEduardoSoaresChaves
Ol,hojevamosaprendercomocriarumsimplessistemadecadastroeloginutilizandoPHP+MySQL.
Ateno.:LembrandoquevocdeverterinstaladonasuamquinaoMySqleterumservidorlocal
comsuporteaphpparapodertestarosistema.(EuutilizeioMysqlWorkbench5.2CE+IIS(Como
php5)).
Criandoatabela'usuarios'
1PassoAprimeiracoisaaserfeitacriarasuatabelanobancodedados,aquinsutilizaremos
apenas3campos(vocpoderutilizarquantoscamposquiser,desdeque,respeitealgumaregras
queseroexplicadas).
Vamosaocdigo:
Listagem1Tabelausuarios(usuarios.sql)
Createtableusuarios(
IDIntUNSIGNEDZEROFILLNOTNULLAUTO_INCREMENT,
loginVarchar(30),
senhaVarchar(40),
PrimaryKey(ID))ENGINE=MyISAM
Ocdigoacima,criouumatabelachamadausuarios,contendoossequintescampos:login(dotipo
varcharcomnomximo30caracteres),senha(dotipovarcharcomnomximo40caracteres),eo
http://www.linhadecodigo.com.br/artigo/3561/criandoumsistemadecadastroelogincomphpemysql.aspx
1/8
10/08/2015
CriandoumsistemadecadastroelogincomPHPeMySql
campoID(dotipoINT,ecomautoincremento.)
Agorasegueumapequenaexplicaosobrecada1dos3campos.
Campo'login'Armazenaronomedigitadonocampo'login'doformulrio(Essecampono
podeserepetirenopodemsernulos,porempodeseralteradopelousuriocasovocdeseje
permitir.)arestrioseraplicadaviaphp.
Campo'senha'Armazenarovalordavariavlsenha(queveremosmaisafrente)
Campo'ID'Armazenaumcdigonicodeusurio,geradocadavezquealguemse
cadastra,dandoidentidadenicaacadalogin(Essecdigonoserepete,enopodeser
alterado,podendocausarfalhascomoinvalidezdascontasdevidoaocompartilhamentodeids)
CriandooFormulriodecadastro
2PassoAgoravamoscriaronossoformulriohtml.Nnessecasonoutilizaremosestiloscss,
apenasumlayoutsimplesparaentenderofuncionamentodosistema(Casoqueirasabercomo
estilizaroseuformulrioacesseestelink:CustomizandoformulrioscomCSS)
Vamosaocdigo:
Listagem2Pginacadastro.html
<html>
<head>
<title>CadastrodeUsurio</title>
</head>
<body>
<formmethod="POST"action="cadastro.php">
<label>Login:</label><inputtype="text"name="login"id="login"><br>
<label>Senha:</label><inputtype="password"name="senha"id="senha"><br>
<inputtype="submit"value="Cadastrar"id="cadastrar"name="cadastrar">
</form>
</body>
</html>
Figura1:cadastro.html
Atenoparaumpontoimportantedessapgina:
Estamosutilizandoomtodopost,paraoenviodosdadosparaapginaphp.Voctambmpode
utilizaroGET,porm,omtodoPOSTmaisseguronoenviodasinformaes,jqueomtodGET
passaosvaloresdoscamposcomoparmetrospelaURL.
http://www.linhadecodigo.com.br/artigo/3561/criandoumsistemadecadastroelogincomphpemysql.aspx
2/8
10/08/2015
CriandoumsistemadecadastroelogincomPHPeMySql
Criandoocadastro.php
3PassoAgoravamoscriarapginacadastro.php,essapginairatratarosdadosinseridosno
formulriodecadastroeinserlosnasuatabelanobancodedados.
Vamosaocdigo:
Listagem3Pginacadastro.php
<?php
$login=$_POST['login']
$senha=MD5($_POST['senha'])
$connect=mysql_connect('nome_do_servidor','nome_de_usuario','senha')
$db=mysql_select_db('nome_do_banco_de_dados')
$query_select="SELECTloginFROMusuariosWHERElogin='$login'"
$select=mysql_query($query_select,$connect)
$array=mysql_fetch_array($select)
$logarray=$array['login']
if($login==""||$login==null){
echo"<scriptlanguage='javascript'type='text/javascript'>alert('Ocampologindeveserpreen
chido')window.location.href='cadastro.html'</script>"
}else{
if($logarray==$login){
echo"<scriptlanguage='javascript'type='text/javascript'>alert('Esseloginjexiste')
window.location.href='cadastro.html'</script>"
die()
}else{
$query="INSERTINTOusuarios(login,senha)VALUES('$login','$senha')"
$insert=mysql_query($query,$connect)
if($insert){
echo"<scriptlanguage='javascript'type='text/javascript'>alert('Usuriocadastr
adocomsucesso!')window.location.href='login.html'</script>"
}else{
echo"<scriptlanguage='javascript'type='text/javascript'>alert('Nofoipossvel
cadastraresseusurio')window.location.href='cadastro.html'</script>"
?>
http://www.linhadecodigo.com.br/artigo/3561/criandoumsistemadecadastroelogincomphpemysql.aspx
3/8
10/08/2015
CriandoumsistemadecadastroelogincomPHPeMySql
Obs:Nalinha7docdigoacima,temosaverificao($login==""||$login==null),essaarestrio
quefalamosanteriormente,emque,ocampologinnopodeestarnulo.
Averificaonalinha13refereseexistnciadeumusuriocomomesmonome,ouseja,casoo
nomeexistanobancodedados,umalertaacionado.
Criandooformulriodelogin
4PassoComapginadecadastrocriada,vamosagoraaoformulriodelogin,quefaroenvio
dasinformaesparaumapginaphpqueverificaraexistnciadesseusurio.
Vamosaocdigo:
Listagem4login.html
<html>
<head>
<title>LogindeUsurio</title>
</head>
<body>
<formmethod="POST"action="login.php">
<label>Login:</label><inputtype="text"name="login"id="login"><br>
<label>Senha:</label><inputtype="password"name="senha"id="senha"><br>
<inputtype="submit"value="entrar"id="entrar"name="entrar"><br>
<ahref="cadastro.html">Cadastrese</a>
</form>
</body>
</html>
Figura2:login.html
Criandoologin.php
5PassoEssapginaserresponsvelportratarasinformaesinseridasnapginadelogine
verificarseousurioinseriuasinformaescorretas,elogoemseguidaredirecionlo.
Listagem5:login.php
<?php
$login=$_POST['login']
$entrar=$_POST['entrar']
http://www.linhadecodigo.com.br/artigo/3561/criandoumsistemadecadastroelogincomphpemysql.aspx
4/8
10/08/2015
CriandoumsistemadecadastroelogincomPHPeMySql
$senha=md5($_POST['senha'])
$connect=mysql_connect('nome_do_servidor','nome_de_usuario','senha')
$db=mysql_select_db('nome_do_banco_de_dados')
if(isset($entrar)){
$verifica=mysql_query("SELECT*FROMusuariosWHERElogin='$login'ANDsenha
='$senha'")ordie("erroaoselecionar")
if(mysql_num_rows($verifica)<=0){
echo"<scriptlanguage='javascript'type='text/javascript'>alert('Logine/ousenh
aincorretos')window.location.href='login.html'</script>"
die()
}else{
setcookie("login",$login)
header("Location:index.php")
?>
Criandoaindex.php
6PassoAgoracriaremosapginaindex.php,queterduaspartes,umapartepblica,eoutra
restrita.
Listagem6:index.php
<?php
$login_cookie=$_COOKIE['login']
if(isset($login_cookie)){
echo"BemVindo,$login_cookie<br>"
echo"Essasinformaes<fontcolor='red'>PODEM</font>seracessadasporvoc"
}else{
echo"BemVindo,convidado<br>"
echo"Essasinformaes<fontcolor='red'>NOPODEM</font>seracessadasporvoc
echo"<br><ahref='login.html'>FaaLogin</a>Paralerocontedo"
"
?>
Pronto,agoravocjtemumsimplessistemadecadastroeloginparausarnoseuprojeto,
lembrandoqueissoapenasobsicoepodemserutilizadasvriasoutrastecnicasparavalidaode
loginesegurana.
Entoissopessoal,porhojeficamosporaquieataprxima.)
CdigoFonte
http://www.linhadecodigo.com.br/artigo/3561/criandoumsistemadecadastroelogincomphpemysql.aspx
5/8
10/08/2015
CriandoumsistemadecadastroelogincomPHPeMySql
Conheaalgunscursosquepodemserteis:
CursodePHPeMySQLCriaodeLojavirtual
CursodeprogramaoeboasprticascomPHP
EduardoSoaresChavesCursando3periodoemSistemasdeInformaon
aUniversidadeEstciodeS.Curso:DesignerGrficoMicrolins(AdobePhot
oshop,CorelDraweInDesign).Atualmentetrabalhocomoprogramadornae
mpresaDevmediaEditoraComunicaoeDesign.
Leiatambm
FeedRSSemPHPcomaclasseSimpleXMLElement
PHP
PHPPDO:Comoseconectaraobancodedados
PHP
EnviandoemailcomPHP
PHP
PHPBsico:IntroduoaoPHP
PHP
PHP:UploaddeArquivos
PHP
Publicidade
REVISTASDEVMEDIA
http://www.linhadecodigo.com.br/artigo/3561/criandoumsistemadecadastroelogincomphpemysql.aspx
6/8
10/08/2015
CriandoumsistemadecadastroelogincomPHPeMySql
.netMag123
Easy.netmag41
VERTODAS
TOP10ARTIGOS
ASSINE
TOP10AUTORES
HTMLBsico
ComandosbsicosemSQLinsert,
update,deleteeselect
Excel:Comoverificarseexistevalores
duplicados
MenuemCSSMenudropdownhorizontal
comHTML5eCSS3
Criandoumsistemadecadastroelogin
comPHPeMySql
FormatodosregistrosdoSintegra
CdigoparabackgroundHTMLeCSS
AlertemJavascript
DesenvolvendoeUsandoWebServices
emJava
10
ConnectionStringsparadiversosbancos
dedados
VERTODOS
7/8
10/08/2015
CriandoumsistemadecadastroelogincomPHPeMySql
LinhadeCdigo
Copyright2015todososdireitosreservadosparaWeb03
http://www.linhadecodigo.com.br/artigo/3561/criandoumsistemadecadastroelogincomphpemysql.aspx
8/8