Apenas Eu 13 Denunciar post Postado Dezembro 21, 2014 Olá! Por aprendizado eu fiz um formulário bem simples onde envio os dados para uma outra página. A ideia é que estes dados fiquem armazenados na outra página com o Session. Mas não sei exatamente onde estou errando. Os dados vão para a página mas não fica armazenado. O cód. abaixo: Pagina 1 <?php // page1.php session_start(); $_SESSION['favcolor'] = 'green'; // exemplo do php.net. Este funciona $_SESSION["nome"] = $nome; // Funciona se o cookie de seção foi aceito echo '<br /><a href="teste2.php">page 2</a>'; ?> <form name="inserir" method="post" action="teste2.php"> <input type="text" name="nome" /><br /> <input type="submit" name="Inserir" value="Inserir" /> </form> Pagina 2 <?php // page2.php session_start(); $nome = $_POST["nome"]; $_SESSION[$nome]; echo $_SESSION['favcolor']; // exemplo do php.net echo "<br>"; echo $_SESSION[$nome]; // meu teste // link para voltar echo '<br /><a href="teste.php">page 1</a><br>'; ?> Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Dezembro 21, 2014 na pagina 2 tente assim $nome = $_POST["nome"]; $_SESSION["nome"] = $nome; echo $_SESSION["nome"]; na pagina 1 acho que isso é desnecessario $_SESSION["nome"] = $nome; ja que $nome nao está definada ou daria pra fazer assim: $_SESSION["dados"] = $_POST var_dump($_SESSION); Compartilhar este post Link para o post Compartilhar em outros sites
Apenas Eu 13 Denunciar post Postado Dezembro 21, 2014 Olá! Obrigado pelo retorno. Eu acho que ja tinha tentando usar esta sua sugestão e não funcionou. De qualquer forma eu tentei de novo mas se sai e volta da página aparece a mensagem: Notice: Undefined index: No var_dump ficaria nome = Null Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Dezembro 21, 2014 Testei o que postei e funciona sim; se você acessar diretamente a pagina2, vai sim aparecer uma mensagem de undefined index porque $_POST["nome"]; vem da página1 leia e interprete o erro Undefined index: você não colocou resto da mensagem, mas veja ai, vai estar o nome do index e o numero da linha no arquivo, ai você vai procurar a resposta para a pergunta onde você definiu um valor a ela? Compartilhar este post Link para o post Compartilhar em outros sites
Apenas Eu 13 Denunciar post Postado Dezembro 21, 2014 Olá! Desculpa a demora pra responder, Então, a mensagem de erro da linha 4 que seria o $nome = $_POST["nome"]; No caso a mensagem aparece quando clica naquele link que serve para avançar à página 2. Eu pedi para que o retorno aparecesse na linha 7 que seria essa: echo $_SESSION["nome"]; No caso ela retorna vazia e aparece a mensagem inteira que seria: Notice: Undefined index: nome in C:\xampp\htdocs\dcs3\teste2.php on line 4 -- Eu achei uma solução embora eu não consiga entender o porque aí funcionar e aqui não. Após a última mensagem que você postou e a pergunta que você pediu para mim analisar, tive a ideia de fazer isso: if ( isset ( $_POST['nome'] ) ) {$nome = $_POST['nome']; } if ( isset ( $_SESSION['nome'] ) ) {$nome = $_SESSION["nome"]; } Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Dezembro 21, 2014 O erro aparece porque a informação de $_POST['nome'] só vai pra outra página se você clicar no botão inserir, quando você submete o formulário. Clicar no link page 2 não vai enviar o que esta no formulario, logo, na pagina2 $_POST['nome'] vai estar undefined Compartilhar este post Link para o post Compartilhar em outros sites
Apenas Eu 13 Denunciar post Postado Dezembro 23, 2014 Ah sim! Mas então... Eu inseria o valor no formulario e clicava inserir. Daí se clicava no link p/ pag. 1 e depois de novo para a pag.2 não ficava salvo os dados. Em suma, eu clicava no link para a pag.2 depois de ter enviado o $_POST['nome'] De qualquer forma, deve ser mesmo alguma coisa que eu estava fazendo errado e não percebi :) Compartilhar este post Link para o post Compartilhar em outros sites