Metodo post y header

Tengo un form que llama a una página php.. Desde esa página abro otra página con la función header...
Para que me eniedas:
Pagina1.php:
<form name"form1" id="form1" method="post" action="pagina2.php">
......
</form>
pagina2.php:
<?php
header("location pagina3.php");
?>
pagina3.php:
<form name"form1" id="form1" method="post"
//aca tengo un campo oculto
</form>
... Lo que deseo es enviar un dato desde pagina1.php para ponerlo en mi campo oculto que esta en pagina3.php.

1 respuesta

Respuesta
1
Vamos por partes.
En la pagina1.php, en el formulario que tienes, envías por el método "post" las variables a la pagina2.php (en este ejemplo envío una variable "nombre" a pagina2.php)
Pagina1.php:
<form name"form1" id="form1" method="post" action="pagina2.php">
...

//Supongamos que tienes un campo de texto con id="nombre"

</form>
En la pagina2.php deberías recibir los datos que envías desde la pagina1.php de la siguiente manera:
Pagina2.php
¿<?php
$campo=$_GET['nombre'];
¿?>
...


Esa variable $campo=$_GET lo colocas antes que cualquier código dentro de tu página. Para ser más claro, luego de ello, colocas las etiquetas
<html>
<head>
, etc.
Después, vamos a poner el código que hace la redirección:

<head>

¿<?
Echo "
<meta http-equiv='Refresh' content='1;URL=pagina3.php?op=".$campo."'/>
";
?>


</head>


Este código colócalo dentro de la etiqueta
<head>
, y lo que hace es redireccionarte a la pagina3.php, en un tiempo de 1 segundo (content='1), y envía como parámetro "op" con el valor que tiene la variable "$campo", que es lo que deberás recibir en la página3.php para mostrarlo donde lo necesites utilizar:
Pagina3.php
¿<?
$recibo_campo=$_GET['op'];
¿?>
Espero que se entienda mi explicación y te sirva para lo que necesites. Si tienes alguna otra consulta, me envías un mensaje y trato de solucionarlo.
Salio como quería... muy bien... pero hay un problema... el algoritmo que he implementado no me permite usar el método GET... hay alguna manera de hacer usando el método POST...¿? ¿?
Estuve revisando el código, y dejame pedirte disculpas, debido a que las variables las recibes con $_POST, no con $_GET como coloque yo.
Si vez, al código que te mostré antes, solo cambia donde dice $_GET por $_POST y me dices que pasa.
Una última aclaración. En la pagina2.php recibes la variable campo por $_POST['nombre'] y en la pagina3.php, lo dejas como está. Es decir, con $_GET['op']
Quedaría de la siguiente manera:
Pagina2.php
¿<?php
$campo=$_POST['nombre'];
?>

Pagina3.php
¿<?
$recibo_campo=$_GET['op'];
?>
Bueno... el problema esta en que estoy trabajando por capas... y todas las instrucciones las tengo con el método post... pero la primera respuesta me ayudo mucho... lo que hice fue enviar mis datos con el POST y enviar un par de variables a nivel de url... muchas gracias... me sirvió de mucho

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas