Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

al.souzabr

problemas com sessão

Recommended Posts

Bom dia pessoal, sou novo aqui e preciso de uma ajudinha, no xampp eu crio minha variavel de sessão e consigo fazer a verificação posteriormente em outras paginas, mas no servidor web eu consigo criar mas ele não acha a minha sessão ao ser verificado em outras paginas, o que pode ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

iniciou a sessão? aparece algum erro?

faça o php exibir os erros no servidor de produção.

 

 

ini_set('display_errors', 1);
error_reporting(E_ALL);

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao exibe erros

 

 

//crio a sessão
session_start('log');
$_SESSION['login'] = $registro['login'];

//verifico em outra pagina



session_start('log');
if(IsSet($_SESSION['login']))
{echo 'entrou';}
else{echo 'não entrou';}

 

vai cair no else..

Compartilhar este post


Link para o post
Compartilhar em outros sites

vc so precisa de um session_start(), na segunda pagina vc tem fazer include da primeira q no caso cria a sessão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tirei o session_start('log') da segunda pagina e dei um include da pagina que cria a sessão, mas continua sem funcionar.



aqui no servidor local funciona, mas no plano de hospedagem ele verifica a sessão criada e nao acha.

desculpa se estou falando alguma bobagem, sou novo aqui no forum.

Compartilhar este post


Link para o post
Compartilhar em outros sites

na primeira e na segunda pagina faz assim:

 

 

echo "<pre>";
var_dump($_SESSION);

Compartilhar este post


Link para o post
Compartilhar em outros sites

se n for mto extenso, posta o codigo das 2 paginas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?phpsession_start('log');echo "<pre>";var_dump($_SESSION);if(Isset($_SESSION['login'])){?><html xmlns="http://www.w3.org/1999/xhtml">// codigo html</html><?php    }     else     echo "<p align='center'>Faça login para acessar nossa aplicação.! <a href='index.php'>Fazer login</a></p>";    echo"<p align='center'><img src='imagens/logofundoprincipal.jpg' /></p>";    ?>

 

a pagina que redireciona:

 

 

 

<?phpinclude("../banco/banco.php");$banco = new Banco();$banco->conectar();$login = $_POST['login'];$senha = $_POST['senha'];$sql = "select nome,nivel,acesso,login,DECODE(senha, 'sec_agricultura') FROM loginWHERE login = '".$login."' and DECODE(senha,'sec_agricultura') = '".$senha."';";$resultado = mysql_query($sql);$registro = mysql_fetch_array($resultado);if($registro['login']==$login)    {                session_start('log');        $_SESSION['login'] = $_POST['login'];        $_SESSION['nivel'] = $registro['nivel'];        $_SESSION['acesso'] = $registro['acesso'];        echo "<pre>";        var_dump($_SESSION);      echo "<script language='javaScript'>window.location.href='../principal.php'</script>";    //header("Location:../principal.php");    } else header("Location:../index.php?result=result&envio=Login ou Senha invalido.!");?>

 

você acha que pode ter algo errado no código?

 

 

 

consegui corrigir, pra falar a verdade nem sei dizer qual alteração fiz.rsrr, obrigado pela ajuda.

 

 

 

 

por um instante mostrou os dados da sessão, mas depois voltou a não mostrar..

Compartilhar este post


Link para o post
Compartilhar em outros sites

faça esse teste no server: http://www.php.net/manual/en/ref.session.php#99664

 

 

sugestão rápida

 

 

pelo que descreveu... algo rápido que posso sugerir é verificar se o path onde são salvas as sessões está com permissão para leitura e escrita..

 

verifique o path no phpinfo()


info.php

 

<?php

phpinfo();
?>

 

 

 

 

veja também

 

 

Configuração de log e eventos de erros do PHP
Tratamento de erros

Dicas para uso de variáveis de sessão

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu tô conseguindo entra sempre na segunda vez que faço login, primeiro ele me joga em um pagina com uma mensagem de que é necessario fazer login, quando volto para a tela de login ele funciona.

 

 

http://www.agriculturalicinio.com/phpinfo.php

 

seria o session.save_path valores: Local Value = /tmp | Master Value = /tmp

 

 

 

 

-

 

 

 

 

cara, ta meio estranho na primeira vez que acesso o login ele me nega o acesso, quando volto novamente para tela de login ele me direciona para a pagina certa, por que será que só na segunda tentativa ele funciona corretamete?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que você quer fazer com isso aqui ?

 

 

session_start('log');

Caso queira salvar o nome dessão o correto seria:

 

 

session_start();
session_register('log');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara hoje cedo consegui resolver, eu dava o start na sessão depois de incluir a minha conexão, o que fiz foi dá um start da sessão antes da conexão. muito obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

session_register, foi removida no php5.4

 

http://www.php.net/manual/en/function.session-register.php

 

Ótimo, não estava sabendo :cry:

Compartilhar este post


Link para o post
Compartilhar em outros sites

session_register estava como deprecated desde o 5.3 e vem sendo avisado desde o 5.0 :ninja:

 

#13...

 

session_start pode estar em qualquer posição no script... o importante é que não conflite com escritas de cabeçalho..

 

Dizer que solucionou colocando antes ou depois de "uma conexão" é muito vago e sem sentido..

Compartilhar este post


Link para o post
Compartilhar em outros sites

session_register estava como deprecated desde o 5.3 e vem sendo avisado desde o 5.0 :ninja:

 

Exato... Eu nunca utilizei dessa função, por isso não me deparei com os "deprecated".

 

Está valendo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.