Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

subkiller

sistema de protecçao no login

Mensagens Recomendadas

subkiller

boas

eu no meu site tenho um sistema de login po admin...

mas preciso de uma proteçao no login porque no endereço se eu meter por exmplo admin/home.php, ele vai para essa pagina e preciso de um sistema de protecçao que nao deixe...

alguem que saiba fazer pode-me explicar como é?

cumps.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
ark15

Fazes uma verificação de login.

Por exemplo :

<? 
@session_start(); // inicia a sessão para verificar se a sessões iniciadas
if (!isset($_SESSION['username'])){ 

    header ("Location: index.php"); //se não Houver sessões inicias ele Volta para a pagina de Login 
    return false;
} else {
    return true; //Se não , ele Deixa o utilizador ir para a pagina desejada.
}


?>

Agora é uma questão de adequares para o teu Sistema de Login.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
subkiller

login.php

<?php

session_start();

include "protection.php";
include "server_info.php";

mysql_connect($server, $username, $password) or die(mysql_error());
mysql_select_db($database) or die(mysql_error());

$username = $_POST['username'];
$password = $_POST['password'];

$query = "SELECT * FROM utilizadores WHERE username='$username' AND password='$password'";

$result = mysql_query($query) or die (mysql_error());

if (mysql_num_rows($result) != 1) 
{
echo "<center><font color='red'><b>Login Errado</b></font></center></p>";
    include "index.html";
}
else 
{
    $_SESSION['username'] = "$username";
    include "home.php";
}

protection.php

<?php
session_start();
if (!isset($_SESSION['username']))
{
header ("Location: login.php");
    return false;
}
else 
{
    return true;
}


?>

desde ja obrigado pela ajuda...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
ark15

Já vi o erro , agora, em cada pagina que queiras ter essa proteção adicionas no inicio de cada uma :

include "protection.php";

Ou seja , tens o login, a pagina que irá surgir seguir ao Login é admn.php (Por exemplo), metes no inicio desse script  include "protection.php"; e funcionara direitinho .

Cmps :thumbsup:

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
ark15

Vê lá agora ,

login.php

<?php

session_start();

include "server_info.php";

mysql_connect($server, $username, $password) or die(mysql_error());
mysql_select_db($database) or die(mysql_error());

$username = $_POST['username'];
$password = $_POST['password'];

$query = "SELECT * FROM utilizadores WHERE username='$username' AND password='$password'";

$result = mysql_query($query) or die (mysql_error());

if (mysql_num_rows($result) != 1) 
{
   echo "<center><font color='red'><b>Login Errado</b></font></center></p>";
    include "index.html";
}
else 
{
    //Criar um array com os dados do user
$a = mysql_fetch_array ($result); 
@session_start(); //criamos uma sessão
$_SESSION['username'] = $a['username'];
    include "home.php";
}
?>

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
subkiller

continua a noa dar e agora deu-me um erro quando tentei fazer login...

Parse error: syntax error, unexpected '@' in C:\wamp\www\site termofilm\admin\login.php on line 25

tens a certeza que a protection é so akilo?

cumps.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
ark15

Absoluta , ja usei varias vezes em script's Diferentes , agora também podes estar a fazer alguma coisa errada que esteja a dar Problemas. verefica o código todo e ve, se desejares, mando-te um Já feito para veres como funciona como te estou a dizer.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
subkiller

nao sei, eu experimentei tudo o que tu disseste, vi o teu exemplo mas continuo a entrar pelo endereço...

nao tou a dizer que a culpa é tua... e agradeço pelo tempo que perdeste a tentar ajudar-me...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.