• 0
Sign in to follow this  
crazySerk

Problema com Sessoes

Question

Galera é o seguinte... estive olhando e percebi que meu site tem algumas falhas.

Meu site possui o login, e a pagina index, no index eu fiz um include para as paginas abrirem tudo nela, por exemplo quero fazer uma pesquisa de um cliente, clico no botao cliente e a pagina de pesquisa abre bem no meio do index ( assim é a forma que encontrei para deixar a pagina mais rapida e não carregar toda hora ).

Até ai está ok a pessoa para acessar o index precisa está logado ( meu login cria session ), criei uma função que faz a checagem se a pessoa tem uma sessão ou não. Abaixo está a função:

<?php

function checar_sessao(){

    if (!isset($_SESSION['usuario'])){
        // por segurança apenas destroi.. 
         session_destroy();
        header ("Location:login.php");
        exit(); 

    }
}

?>
E no arquivo config.php eu coloquei para iniciar a session ( assim não preciso colocar em todos os arquivos apenas coloco o config.php, eu acho que é assim não é? )
<?php
session_start();

$host = "localhost";
$user = "root";
$password = "";
$dbname = "testes";

$con = mysql_connect($host, $user, $password) or die("Erro ao tentar se conectar!");
mysql_select_db($dbname)or die("Erro ao selecionar o banco!");
?>

Se caso a pessoa for no link la e digitar localhost:8080/index a funcão que adicionei funciona e joga o cara para tela de LOGIN...

Bom até ai creio que está ok.

Agora vem o problema, se a pessoa for no meu site e digitar por exemplo localhost:8080/pesquisa_cliente.php ( que no caso é o link para pesquisar os clientes, que uso como include na pagina index ) ela abre normal, e se por acaso eu adicionar a função de checar a sessão nessa pagina pesquisa_cliente, quando a pessoa digita pelo navegador o link não abre, porém, quando acesso meu site e clico no botão para abrir pelo include ele não abre...

Deve ser alguma coisa na checagem da sessão do index junto com a pagina, porém não faço ideia como resolver.

Bom essa é a minha duvida, espero que tenham entendido a minha dificuldade, se caso não fui claro suficiente me perdoe.. :)

Espero uma força...

att

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Deixa eu adivinhar, você está fazendo o include do arquivo config.php na index? Se sim, o que ocorre é que se o carra acessar as páginas diretamente ele não terá o session_start() por isto checar não funciona. Neste caso você pode fazer é verificar se a sessão foi iniciada, se não foi é porque ele acessou o arquivo diretamente:

if(!isset($_SESSION)){ 
//Acesso o arquivo direto, redireciona...
}

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this