Ir para conteúdo

POWERED BY:

Arquivado

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

Vinicius Wentz

Não consigo fazer funcionar a SESSION

Recommended Posts

por exemplo depois de ter realizado validação de senha e user então irei criar a SESSION:

 

<?php

session_start();

$_SESSION["user"] = $user;

$_SESSION["senha"] =$senha

 

?>

 

Depois de feito isso, em outra pagina tento pegar esses valores setados na SESSION (pois agora essas variaveis estão disponiveis pra todas as pages) e mostrar mas não mostra nada como se não tivesse criado a sessão..Será alguma configuração no PHP q não deixa usar o comando $_SESSION[] ???Se alguem tiver algum exemplo de sessão ou alguma solução agradeço.. valeu!! Imagem Postada

 

<?php

session_start();

echo $_SESSION["user"];

echo $_SESSION["senha"];

 

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Existe uma maneira mais fácil... pelo menos eu acho.

 

Para efeito de teste.

seta.php

<?

$login = "username";

$senha = "password";

$nome = "fulano de tal";

$email = "seuemail@provedor.com";

 

           session_start("nome_da_sua_session");

           session_start();

           session_destroy();

           session_register("login","senha","nome","email");

           echo "<b>Sessões Registradas</b><br><br>";

           echo "<a href='mostra.php'>Continuar</a>";

           exit;

mostra.php

<?

echo "Login: ".$HTTP_SESSION_VARS[login]."<br>";

echo "Senha: ".$HTTP_SESSION_VARS[senha]."<br>";

echo "Nome: ".$HTTP_SESSION_VARS[nome]."<br>";

echo "Email: ".$HTTP_SESSION_VARS."<br>";

?>

Esse é um exemplo de como funciona a session. É uma variável gravada temporariamente, que pode ser utilizada para validar usuários, guardar informações sobre compras, etc.

 

Acima você viu como são setados e recuperados seus dados. Você pode autenticar usuários validando da seguinte forma...

 

Insira este comando na primeira linha de todas as páginas que deseja que sejam protegidas.

 

e crie o arquivo...

 

session_verify.php

Como você pode notar, se a session estiver ativa, ele transforma os dados da mesma em variáveis para ficar mais fácil de trabalhar.

Você poderá testar o funcionamento colocando a linha dita acima no arquivo mostra.php...

 

mostra.php

Continuei utilizando $HTTP_SESSION_VARS[xxxx], mas se quiser poderá mudar para as variaveis setadas ápós a verificação.

 

Espero não ter te complicado...qualquer coisa manda ai que eu conserto a explicação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Lembre-se!!!! O script é executado linha por linha, se voce poe no topo uma variavel que ainda nem foi declarada, nao sera arquivado nada na session. Se ela vem de FORM é estranho que n tenha sido memorizado o valor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Realmente o código q você descreveu acima funcionou corretamente!!! MInha dúvida agora é pq q não funcionou com a variável superglobal $_SESSION[] ,

pois com o uso dela seria muito mais facil...estou com um livro de PHP q mostra apenas usando com essa variavel $_SESSION e diz q usando essa variavel não é necessário registrar Sessões etc.. apenas usar session_start() e depois colocar os valores na var $_SESSION[]...émuito estranho..meu php é PHP 4.0 - Win32 Distribution (php triad) se alguem souber o pq disso...Aqui tb não funciona o $_POST[] pra recuperar valores do form......por isso acho q é configuração,,,,VALEU!!!!!!!!!!!!!!!!!!!!! Imagem Postada

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique se no seu php.ini o item register_globals está ON.

 

register_globals = on

Pode ser isto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

GAlera descobri pq não funcionava....A versão do meu PHP 4.0 é muito antiga e ainda não tem suporte para essa variavel.....peguei o php 4.3.4 e agora funcionou tudo.........exemplo:

 

teste.php

 

<?php

session_start();

$_SESSION['user'] = "vinicius";

$_SESSION['senha'] ="php434";

echo "<a href='teste2.php'>Continuar</a>";

?>

 

 

teste2.php

 

<?php

session_start();

echo "Login: ".$_SESSION['user']."<br>";

echo "Senha: ".$_SESSION['senha']."<br>";

session_destroy();

?>

 

Agora funcionou!!! bem mais fácil q usar register etc...... VALEU GALERA!! Imagem Postada

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.