Array
(
)

Como criar uma página que só pode ser acessada com o usuário logado

PHP
Gustavo Vaz
   - 07 dez 2013

Galera, sou novato em php e estou criando um site com uma área restrita com login e senha.Consegui fazer toda a criação inicial e está logando direitinho, porém estou com a seguinte situação: Tenho na pagina index, 2 links, um chamado download e outro comprar. Quando clicar em Download ou Comprar, se não está logado, vai para página de Login, assim que efetuei o Login já é redirecionado para a página de Downloads ou Comprar e no caso de estar logado, vai diretamente para a página de Download ou Comprar.

Marcio Araujo
   - 08 dez 2013

isso tem haver mais com banco, não se se isso é possivel de fazer somente com php. posso esta enganado

Eduardo Backes
   - 09 dez 2013

Você pode salvar essas informações em uma sessão quando o usuário faz o login, e quando o usuário for acessar um desses links você pode verificar a sessão e ver se o usuário está logado ou não.

Samuel Diogo
   - 10 dez 2013

Exatamente como o Eduardo complementou, e claro fica mais dinãmico se for mesclar com a sugestão do Marcio!

Vamos exemplificar:
na página login.php

#Código

<?php 
session_start();

$_SESSION["usuario"] = $usuario;
$_SESSION["nivel"] = $nivel;

?>

pagina nivel1.php
#Código
<?php 
session_start();

if($_SESSION["nivel"] == "1")
{
echo "você pode acessar esta página!";
}

else {
    echo "<script>
            location.href='index.php';
            </script>";
}
?>


tem muito que melhorar neste codigo, dê uma lida no manual do php, tem boa informação lá!

$_SESSION - PHP Manual

veja todas as funções você trabalhar com sessão!!

Funções para Sessão

Boa Sorte!

Marcio Araujo
   - 10 dez 2013

esse seu codigo Samuel Diogo, é somente com PHP? ou tem haver com o banco, quando citei.

Marcio Araujo
   - 11 dez 2013

Samuel???

Samuel Diogo
   - 12 dez 2013


Citação:
esse seu código Samuel Diogo, é somente com PHP? ou tem haver com o banco, quando citei.


márcio, veja bem, na página login.php criamos um método que valida login, certo? se o retorno for positivo, ou seja, o login existe e a senha digitada confere, logo armazenaremos em uma variável de sessão o valor do login, e de quebra, o que ele pode acessar!

O código que passei aqui é bem genérico, como pode ver, não há implementação com banco de dados, mas dá margem a esta e n outras possibilidades!

EDIT:

Segue alguns artigos de $_SESSION que achei super legal, aqui mesmo na DEVMEDIA:
Criando sessão para login no PHP

Serialização de objetos em SESSION no PHP

e tem muito mais: SESSION php