Foros del Web » Programando para Internet » PHP »

Pasar variable entre dos páginas PHP

Estas en el tema de Pasar variable entre dos páginas PHP en el foro de PHP en Foros del Web. Hola a todos! seguramente lo que pregunte sea una tonteria pero me estoy mareando un poco... En una parte de mi sitio web, tengo 3 ...
  #1 (permalink)  
Antiguo 01/03/2011, 11:21
 
Fecha de Ingreso: enero-2011
Mensajes: 84
Antigüedad: 10 años, 3 meses
Puntos: 4
Pasar variable entre dos páginas PHP

Hola a todos! seguramente lo que pregunte sea una tonteria pero me estoy mareando un poco...

En una parte de mi sitio web, tengo 3 páginas. Llamémosle form.html, gracias.php y planos.php.

El cliente llena form.html y los datos son enviados a gracias.php mediante $_POST, donde se realizan unos cálculos cuyos resultados finales se guardan en variables. A estas variables llamemosle $variable1 y $variable2.

Bueno pues ahora necesito pasar estas variables a la página planos.php que las mostrará dentro de unos planos en una ventana nueva lista para imprimir y no se como pasarlas Solo se puede hacer mediante un formulario oculto o algo así con $_POST?

Bueno muchas gracias de antemano!

Un saludo a todos craks
  #2 (permalink)  
Antiguo 01/03/2011, 11:29
 
Fecha de Ingreso: noviembre-2009
Mensajes: 64
Antigüedad: 11 años, 5 meses
Puntos: 1
Respuesta: Pasar variable entre dos páginas PHP

pues para desplegar el contenido de las variables tienes que construir unas funciones para cada una de las variables, donde se recoja el valor que envía el usuario,

luego solo tendrias que poner algo asi como <?php varable1(); ?> <?php variable2(); ?> para imprimir el valor de las varables.

claro que la onda cambia, creo, dependiendo si usas base de datos, o no.

es un poco lo que te puedo ayudar. saludos
  #3 (permalink)  
Antiguo 01/03/2011, 11:31
Avatar de sonics2008  
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 60
Antigüedad: 11 años, 5 meses
Puntos: 2
Respuesta: Pasar variable entre dos páginas PHP

hola machetee mira, lo mas seguro es que en planos tengas tus script dentro de
Código PHP:
function planos()
{
    
datos;

bueno si es así lo que deberias hacer es gracias.php cuando ya tengos los datos hacer esto

Código PHP:
datos en gracias.php

planos
($variable1,$variable2); 
con eso, las variables se van a ir a planos, eso si despues de colocar <?php tienes que colocar requiere_once(planos.php)
para que esten vinculados.
luego en planos

haces esto

Código PHP:
function planos($xvariable1,xvariable2)
{
 
aqui va tu scripty trabajas con las variables $xvariable1 y $xvariable2

espero que se me entienda y te resulte.

saludps
  #4 (permalink)  
Antiguo 01/03/2011, 11:34
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 10 años, 3 meses
Puntos: 155
Respuesta: Pasar variable entre dos páginas PHP

Código PHP:
function redirecciona($destino,$datos,$metodo){
    /*
    forma del array 
    $datos=(‘nombreparametro’=>valor,’nombreparametro2’=>valor2 ...,’nombreparametroN’=>valorN)
    
    */
    
    if ($metodo=="get") {
        if (!headers_sent()) {
            $cadena="";
            if (count($datos)>0) {
                foreach ($datos as $key=>$value){
                    $cadena.="$key=$value&";
                }
                $cadena=substr($cadena,0,strlen($cadena)-1);
                header("Location: $destino?$cadena");
            }
            else {
                header("Location: $destino");
            }
            
            
            
        }
        else {
            ?>
            <form name="envia" method="GET" action="<?=$destino?>">
            <?if (count($datos)>0) {
                foreach (
$datos as $key =>$value){?>
                    <input type="hidden" name="<?=$key?>" value="<?=$value?>">
                <?}
            }
?>
            </form>
            <script>document.envia.submit();</script>
            <?
        
}
    }
    else if(
$metodo=="post"){
        
?>
        <form name="envia" method="POST" action="<?=$destino?>">
        <?if (count($datos)>0) {
            foreach (
$datos as $key =>$value){?>
                <input type="hidden" name="<?=$key?>" value="<?=$value?>">
            <?}
        }
?>
        </form>
        <script>document.envia.submit();</script>
        <?
    
}
}
  #5 (permalink)  
Antiguo 01/03/2011, 11:44
 
Fecha de Ingreso: enero-2011
Mensajes: 84
Antigüedad: 10 años, 3 meses
Puntos: 4
Respuesta: Pasar variable entre dos páginas PHP

Muchas gracias a todos!

Bueno en planos.php no tengo ninguna función ni ningún script ni nada, solo unos planos que necesito poner dos numeritos que los tengo ke importar de gracias.php ... ¿hay que hacer tantas cosas o hay alguna forma más facil? de las tres soluciones que me proponeis cual creeis que es la más sencilla? la verdad es que ando un poco verde en PHP porque la mayoría de páginas que hago tienen poco contenido dinámico pero me tengo que poner las pilas!
  #6 (permalink)  
Antiguo 01/03/2011, 11:51
Avatar de sonics2008  
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 60
Antigüedad: 11 años, 5 meses
Puntos: 2
Respuesta: Pasar variable entre dos páginas PHP

pero en planos tienes algun codigo para que lo muestres?
  #7 (permalink)  
Antiguo 01/03/2011, 12:22
 
Fecha de Ingreso: enero-2011
Mensajes: 84
Antigüedad: 10 años, 3 meses
Puntos: 4
Respuesta: Pasar variable entre dos páginas PHP

Es que planos no tiene nada de php... es una tabla con unos planos donde hay dos huecos que tengo que colocar las dos variables dichosas xD. Se como colocarlas pero me falta obtenerlas de gracias.php, que no se como puedo pasar $variable1 y $variable2 de gracias.php a planos.php :$
  #8 (permalink)  
Antiguo 01/03/2011, 12:26
 
Fecha de Ingreso: enero-2011
Mensajes: 84
Antigüedad: 10 años, 3 meses
Puntos: 4
Respuesta: Pasar variable entre dos páginas PHP

Aunque bueno Sonics, la respuesta que me diste de pasar las variables mediante funciones me parece bastante buena. No sabia que puedes declarar una función en una página PHP, y utilizarla en otra para obtener datos, la verdad es que no domino este lenguaje, domino otros de programacion orientada a objetos y cuando quiero hacer algo miro la sintaxis de PHP, pero esta vez me mareado bastante xD
  #9 (permalink)  
Antiguo 01/03/2011, 12:27
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 10 años, 3 meses
Puntos: 155
Respuesta: Pasar variable entre dos páginas PHP

Código PHP:
#gracias.php

/***********la mugrosa funcion*****************/
function redirecciona($destino,$datos,$metodo){
    /*
    forma del array 
    $datos=(‘nombreparametro’=>valor,’nombreparametro2’=>valor2 ...,’nombreparametroN’=>valorN)
    
    */
    
    if ($metodo=="get") {
        if (!headers_sent()) {
            $cadena="";
            if (count($datos)>0) {
                foreach ($datos as $key=>$value){
                    $cadena.="$key=$value&";
                }
                $cadena=substr($cadena,0,strlen($cadena)-1);
                header("Location: $destino?$cadena");
            }
            else {
                header("Location: $destino");
            }
            
            
            
        }
        else {
            ?>
            <form name="envia" method="GET" action="<?=$destino?>">
            <?if (count($datos)>0) {
                foreach (
$datos as $key =>$value){?>
                    <input type="hidden" name="<?=$key?>" value="<?=$value?>">
                <?}
            }
?>
            </form>
            <script>document.envia.submit();</script>
            <?
        
}
    }
    else if(
$metodo=="post"){
        
?>
        <form name="envia" method="POST" action="<?=$destino?>">
        <?if (count($datos)>0) {
            foreach (
$datos as $key =>$value){?>
                <input type="hidden" name="<?=$key?>" value="<?=$value?>">
            <?}
        }
?>
        </form>
        <script>document.envia.submit();</script>
        <?
    
}
}
/*****************************************/


$datos["variable1"]=$variable1;#definicion de los datos a mandar
$datos["variable2"]=$variable2;
redirecciona("planos.php",$datos,"get");#direccion y metodo de envio
Código PHP:
#planos.php
@$variable1=$_GET["variable1"];#recepcion de variables
@$variable2=$_GET["variable2"]; 
  #10 (permalink)  
Antiguo 01/03/2011, 12:41
 
Fecha de Ingreso: enero-2011
Mensajes: 84
Antigüedad: 10 años, 3 meses
Puntos: 4
Respuesta: Pasar variable entre dos páginas PHP

Muchas gracias a todos, mañana en la oficina lo pruebo todo xD
  #11 (permalink)  
Antiguo 02/03/2011, 02:28
 
Fecha de Ingreso: enero-2011
Mensajes: 84
Antigüedad: 10 años, 3 meses
Puntos: 4
Respuesta: Pasar variable entre dos páginas PHP

Hola a todos de nuevo!

Parece ser que hoy me he levantado con la cabeza mas despejada...

Lo único que realmente tengo que hacer creo que es esto. En gracias.php:

Código:
echo "<a href='planos.php?variable1=$variable1&variable2=$variable2'>Ver planos</a>";
Y luego en planos.php:

Código:
echo "Variable usuario 1: $variable1"
echo "Variable usuario 2: $variable2"
Pero no me muestra las variables para ver que me han llegado correctamente
En la cabecera en el navegador si que aparecen, pero luego no las muestra...
¿A que puede ser debido?
  #12 (permalink)  
Antiguo 02/03/2011, 02:41
 
Fecha de Ingreso: enero-2011
Mensajes: 84
Antigüedad: 10 años, 3 meses
Puntos: 4
Respuesta: Pasar variable entre dos páginas PHP

Vale... se me olvidó pasar las variables con $_GET... soy un pakete

Bueno ya está claro, ya salen los numeritos en los planos!

Muchas gracias a todos!

Etiquetas: dos, pasar, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 05:43.