Ir para conteúdo
Fórum Script Brasil
  • 0

Session


Delivery

Pergunta

Quando tento passar as variáveis de uma página para outra usando session elas não aparecem na segunda.

sessao1.php

<html>
<head>
<title>Untitled Document</title>
</head>

<body>
<form name="form1" method="post" action="sessao2.php">
  <input type="submit" name="teste" value="Submit">
</form>
</body>
</html>
sessao2.php
<?php
session_start();
$_SESSION['ok'] = "OK";
?>

<html>
<head>
<title>Untitled Document</title>
</head>

<body>
<?php
if($_POST['var'] == 'teste') {
echo $_SESSION['ok'];
} else {
echo "Erro.";
}
?><br>
<br>
<a href="sessao3.php">Prosseguir</a>
</body>
</html>
sessao3.php
<?php
session_start();
If(IsSet($_SESSION['ok'])) {
echo "OK";
exit;
}
?>

<html>
<head>
<title>Untitled Document</title>
</head>

<body>
ERRO.
</body>
</html>

No sessao1.php tem um botão que vai para sessao2.php e registra uma variável na session. No sessao2.php clicando em prosseguir vai para sessao3.php.

Aqui no meu servidor, depois de clicar em prosseguir, ao invés de aparecer a mensagem "OK" aparece "ERRO.".

Já tentei de várias maneiras modificando o php.ini, e ainda continua o problema.

Se alguém puder me ajudar, fico muito grato!

Vlw. Obrigado.

Link para o comentário
Compartilhar em outros sites

17 respostass a esta questão

Posts Recomendados

  • 0

A função isset eu tenho usado com o 's' em minúculo e tem funcionado, dessa forma:

if(Isset($_SESSION['variavel'];

$variavel = $_SESSION['variavel'];

O que notei é que no seu formulário você não está passando variável nenhuma, não sei se funciona assim como você está fazendo.

Do jeito que fiz, eu passo as variáveis pelo formulário, declaro elas como super-globais de sessão e funciona certinho.

Link para o comentário
Compartilhar em outros sites

  • 0

Exetamente como voce fez, só copiei e colei..

http://www.infinitehost.com.br/testes/sessao1.php

no segundo aparece Erro, pois esta tertando o POST, como não existe aparece a mensagem Erro, ao clicar em prosseguir ele aparece o OK..

ve se funciona ai..

não foi alterado nada no Script...

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Ae galera,

é verdade, não tinha visto o $_POST['var'], que ta errado mesmo.

Mas apesar disso não vai influir em nada, o importante é que ao clicar em prosseguir vai continuar dando erro aqui.

No link que a Jissa colocou está dando "OK" na ultima página mostrando que a session ainda tava registrada ao mudar de pagina. Aqui ta dando erro. Já tentei instalar o PHP três vezes e mesmo assim ta dando problema. Acho que o confusão é na configuração do php.ini.

Obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

no phpinfo.php o session ta enable mesmo.

aqui ta a parte de sessio do php.ini

[Session]

session.save_handler = files
session.save_path = "C:\Windows\temp"
session.use_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor     = 100
session.gc_maxlifetime = 1440
session.bug_compat_42 = 0
session.bug_compat_warn = 1
session.referer_check =
session.entropy_length = 0
session.entropy_file =
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 5
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset="

Obridago!

Link para o comentário
Compartilhar em outros sites

  • 0

é , acho que não sei como te ajudar..

sad.gif

unica coisa que pode ser é onde esta tentando gravar as sessoes

session.save_path = "C:\Windows\temp" veja se existe o diretorio, e se esta salvando lá, pode ser algum problema ai local, parece que o php.ini esta correto.

Link para o comentário
Compartilhar em outros sites

  • 0

Explica melhor o que você pretende fazer

sobre seu teste com if é claro que sempre vai cair no erro mas não que esta errado é porque você ta testando se uma variavel é igual a "teste" dai não existe essa variavel por isso sempre vai cair no erro

Link para o comentário
Compartilhar em outros sites

  • 0

Ae Fabyo,

testando esse outro código:

sessao4.php

<?php
session_start();
$_SESSION["nome"] = "Teste";
echo "<a href=\"sessao5.php\">".$_SESSION["nome"]."</a>";
?>
sessao5.php
<?php
session_start();
echo $_SESSION["nome"];
?>

Na segunda página deveria aparecer "Teste", mas a página aparece em branco.

O problema não é no código e sim em alguma configuração errada do PHP.

Obrigado.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...