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

Troca de dados entre páginas com session


faguanil

Pergunta

Para responder minhas dúvidas criei três scripts que segue abaixo, é necessário eu ter estas 3 páginas.

1 - inicio.php

<html> <body>

<form action="meio.php" method="post">

Nome:<input type="text" name="nome" size="60" class="campos_texto"><p>

Idade:<input type="text" name="idade" size="60" class="campos_texto"><p>

<input type = "submit" value="Próximo" name="proximo" class="botao">

<input type="button" value="Voltar" class="botao" onClick="java script: window.history.back();">

</form>

</body>

</html>

2 - meio.php

<html>

<body>

<?php

session_start();

$_SESSION['nome'] = $_POST['nome'];

$_SESSION['idade'] = $_POST['idade'];

?>

<form action=fim.php" method="post">

Cidade:

<select name="cidade">

<option value=""></option>

<option value="cidadea">Cidade A</option>

<option value="cidadeb"> Cidade B </option>

</select>

<input type = "submit" value="Próximo" name="proximo" class="botao">

<input type="button" value="voltar" class="botao" onclick="java script: location.href='inicio.php';">

</form>

</body>

</html>

3 - fim.php

<html>

<body>

<?php

session_start();

$nome = $_SESSION['nome];

$idade = $_SESSION['idade'];

$cidade = $_POST["cidade"];

echo "$nome";

echo "<br>";

echo "$idade";

echo "<br>";

echo "$cidade";

echo "<br>";

session_destroy();

<form action="" method="post">

<input type="button" value="voltar" class="botao" onclick="java script: location.href='meio.php';">

</form>

</body>

</html>

O problema que estou tendo é quando preencho os campos de todos os formulários e quando chego no script fim e volto para o script meio gera o seguinte erro:

Notice: Undefined index: nome in E:\sites\teste\meio.php on line 5

Notice: Undefined index: idade in E:\sites\teste\meio.php on line 6

Ou seja, as variáveis nome e idade não são definidas, como resolvo este problema.

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

OK deu certo sua resposta, segue abaixo o código do script "meio":

<html>
<body>
<?php
session_start();
if(isset($_POST['NOME']) || isset($_POST['idade'])){
$_SESSION['nome'] = $_POST['nome'];
$_SESSION['idade'] = $_POST['idade']; 
}
?>
<form action="fim.php" method="post">
Cidade:
<select name="cidade">
<option value=""></option>
<option value="cidadea">Cidade A</option>
<option value="cidadeb"> Cidade B </option> 
</select>
<input type = "submit" value="Próximo" name="proximo" class="botao">
<input type="button" value="voltar" class="botao" onclick="java script: location.href='inicio.php';">
</form>
</body>
</html>

Tenho mais um problema, neste script tenho um dropdown chamado cidade, quando preencho este campo e clico no botão "Próximo", vou para a página "fim.php", preciso que quando eu estiver na página "fim.php" e voltar para a página "meio.php" a informação selecionada neste dropdown seja mantida. Obrigado pela dica.

Link para o comentário
Compartilhar em outros sites

  • 0

Primeiro crie uma sessão com os dados da cidade, depois use algo do tipo...

$cidade = (isset($_SESSION['cidade']))?$_SESSION['cidade']:'';

?>
<form action="fim.php" method="post">
Cidade:
<select name="cidade">
<option value=""></option>
<option value="cidadea" <?php if($cidade == 'cidadea'){echo 'selected=""';}?>>Cidade A</option>
<option value="cidadeb" <?php if($cidade == 'cidadeb'){echo 'selected=""';}?>>Cidade A</option>

Link para o comentário
Compartilhar em outros sites

  • 0

Tentei executar aqui mas não deu certo, segue os scripts abaixo:

meio.php

html>
<body>
<?php
session_start();
$cidade = (isset($_SESSION['cidade']));
if(isset($_POST['NOME']) || isset($_POST['idade'])){
$_SESSION['nome'] = $_POST['nome'];
$_SESSION['idade'] = $_POST['idade']; 
}
?>
<form action="fim.php" method="post">
Cidade:
<select name="cidade">
<option value=""></option>
<option value="cidadea" <?php if($cidade == 'cidadea'){echo 'selected=""';}?>>Cidade A</option>
<option value="cidadeb" <?php if($cidade == 'cidadeb'){echo 'selected=""';}?>>Cidade B</option> 
</select>
<input type = "submit" value="Próximo" name="proximo" class="botao">
<input type="button" value="voltar" class="botao" onclick="java script: location.href='inicio.php';">
</form>
</body>
</html>
fim.php
<html>
<body>
<?php
session_start();
if(isset($_POST['cidade'])){
$_SESSION['cidade'] = $_POST['cidade'];
}
$nome = $_SESSION['nome'];
$idade = $_SESSION['idade'];
$cidade = $_SESSION['cidade'];
echo "$nome";
echo "<br>";
echo "$idade";
echo "<br>";
echo "$cidade";
echo "<br>";
session_destroy();
?>
<form action="" method="post">
<input type="button" value="voltar" class="botao" onclick="java script: location.href='meio.php';">
</form>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

Diferente da sua educação, Outro detalhe acho que aqui no fórum é um lugar de estudo, não apenas de copiar e colar. Segue abaixo novamente os scripts mesmo assim ao retornar da página fim.php para a página meio.php o campo DropDow não armazena o último valor selecionado.

<html>
<body>
<?php
session_start();
$cidade = (isset($_SESSION['cidade']))?$_SESSION['cidade']:'';
if(isset($_POST['NOME']) || isset($_POST['idade'])){
$_SESSION['nome'] = $_POST['nome'];
$_SESSION['idade'] = $_POST['idade']; 
}
?>
<form action="fim.php" method="post">
Cidade:
<select name="cidade">
<option value=""></option>
<option value="cidadea" <?php if($cidade == 'cidadea'){echo 'selected=""';}?>>Cidade A</option>
<option value="cidadeb" <?php if($cidade == 'cidadeb'){echo 'selected=""';}?>>Cidade B</option> 
</select>
<input type = "submit" value="Próximo" name="proximo" class="botao">
<input type="button" value="voltar" class="botao" onclick="java script: location.href='inicio.php';">
</form>
</body>
</html>
<html>
<body>
<?php
session_start();
if(isset($_POST['cidade'])){
$_SESSION['cidade'] = $_POST['cidade'];
}
$nome = $_SESSION['nome'];
$idade = $_SESSION['idade'];
$cidade = $_SESSION['cidade'];
echo "$nome";
echo "<br>";
echo "$idade";
echo "<br>";
echo "$cidade";
echo "<br>";
session_destroy();
?>
<form action="" method="post">
<input type="button" value="voltar" class="botao" onclick="java script: location.href='meio.php';">
</form>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

Problema resolvido bastou retirar o session_destroy(); da página fim.php que funcionou corretamente. Então ta ai um exemplo de estudo e não apenas de copiar e colar.

Segue abaixo os códigos para quem precisar:

inicio.php

<html>
<body>
<form action="meio.php" method="post">
Nome:<input type="text" name="nome" size="60" class="campos_texto"><p>
Idade:<input type="text" name="idade" size="60" class="campos_texto"><p>
<input type = "submit" value="Próximo" name="proximo" class="botao">
<input type="button" value="Voltar" class="botao" onClick="java script: window.history.back();">
</form>
</body>
</html>
meio.php
<html>
<body>
<?php
session_start();
$cidade = (isset($_SESSION['cidade']))?$_SESSION['cidade']:'';
if(isset($_POST['NOME']) || isset($_POST['idade'])){
$_SESSION['nome'] = $_POST['nome'];
$_SESSION['idade'] = $_POST['idade']; 
}
?>
<form action="fim.php" method="post">
Cidade:
<select name="cidade">
<option value=""></option>
<option value="cidadea" <?php if($cidade == 'cidadea'){echo 'selected="$cidadea"';}?>>Cidade A</option>
<option value="cidadeb" <?php if($cidade == 'cidadeb'){echo 'selected="$cidadeb"';}?>>Cidade B</option> 
</select>
<input type = "submit" value="Próximo" name="proximo" class="botao">
<input type="button" value="voltar" class="botao" onclick="java script: location.href='inicio.php';">
</form>
</body>
</html>
fim.php
<html>
<body>
<?php
session_start();
if(isset($_POST['cidade'])){
$_SESSION['cidade'] = $_POST['cidade'];
}
$nome = $_SESSION['nome'];
$idade = $_SESSION['idade'];
$cidade = $_SESSION['cidade'];
echo "$nome";
echo "<br>";
echo "$idade";
echo "<br>";
echo "$cidade";
echo "<br>";
?>
<form action="" method="post">
<input type="button" value="voltar" class="botao" onclick="java script: location.href='meio.php';">
</form>
</body>
</html>

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,3k
    • Posts
      652,5k
×
×
  • Criar Novo...