Foros del Web » Programando para Internet » PHP »

Redirección "transparente" con parámetros: será imposible??

Estas en el tema de Redirección "transparente" con parámetros: será imposible?? en el foro de PHP en Foros del Web. Hola, estoy intentando enviar datos a un formulario usando PHP de la siguiente manera: $x=sprintf("Location: ../prueba/fichero.php?var=%s", $valor); header($x); pero no lo consigo. Alguien sabe qué ...
  #1 (permalink)  
Antiguo 01/07/2005, 13:22
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
Redirección "transparente" con parámetros: será imposible??

Hola,
estoy intentando enviar datos a un formulario usando PHP de la siguiente manera:

$x=sprintf("Location: ../prueba/fichero.php?var=%s", $valor);

header($x);


pero no lo consigo.

Alguien sabe qué es lo que está fallando??

Gracias.

Última edición por dominguez; 01/07/2005 a las 15:48
  #2 (permalink)  
Antiguo 01/07/2005, 13:51
Avatar de DoKyE  
Fecha de Ingreso: junio-2005
Mensajes: 144
Antigüedad: 12 años, 5 meses
Puntos: 0
Hola
Prueba esto:

<? echo<a href=\"Pagina_a_la_cual_quieres_ir.php?var1=$varib le_que_quieres_pasar_a_la_otra_pagina&var2=$otra_v arible_que_quieras_pasar_a_la_otra_pagina\">ir</a"; ?>

o tambien puedes probar que te redirecciona automaticamente a la pagina que quieres ir

echo "<meta http-equiv='refresh' content='0; URL= Pagina_a_la_cual_quieres_ir.php?var1=$varible_que_ quieres_pasar_a_la_otra_pagina&var2=$otra_varible_ que_quieras_pasar_a_la_otra_pagina'>";

Bueno puedes probar muchas cosas mas pero esta es como la forma

pagina_a_la_que_quieres_ir.php?variable=$variable_ que_quieres_pasar&variable2=$otra_variable_para_pa sar
Saludos
__________________
Chiloé
  #3 (permalink)  
Antiguo 01/07/2005, 13:57
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
Hola,
lo que quiero es una redirección que no haga falta intervención alguna por parte del usuario, que sea algo totalmente transaparente.

Sin pulsar ningún linck ni nada.

Gracias.
  #4 (permalink)  
Antiguo 01/07/2005, 14:02
Avatar de DoKyE  
Fecha de Ingreso: junio-2005
Mensajes: 144
Antigüedad: 12 años, 5 meses
Puntos: 0
o tambien puedes probar que te redirecciona automaticamente a la pagina que quieres ir

echo "<meta http-equiv='refresh' content='0; URL= Pagina_a_la_cual_quieres_ir.php?var1=$varible_que_ quieres_pasar_a_la_otra_pagina&var2=$otra_varible_ que_quieras_pasar_a_la_otra_pagina'>";


Lee bien
__________________
Chiloé
  #5 (permalink)  
Antiguo 01/07/2005, 14:15
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
Hola, he probado lo que me has dicho:

echo "<meta http-equiv='refresh' content='0; URL= ../prueba/fichero.php?var=$valor'>";

y la página que contiene esta línea queda refrescándose indefinidamente.

Qué puede suceder?

Gracias por la ayuda.
  #6 (permalink)  
Antiguo 01/07/2005, 14:17
Avatar de DoKyE  
Fecha de Ingreso: junio-2005
Mensajes: 144
Antigüedad: 12 años, 5 meses
Puntos: 0
Código PHP:
<? echo "<meta http-equiv='refresh' content='0; URL= hola.php?nombre=$nombres&apellido=$apellidos'>";?>
Despues en el formulario de la pagina hola.php

<input name="nombre" " type="text" value="<? echo "$nombre";?>" size="50">
<input name="apellido" " type="text" value="<? echo "$apellido";?>" size="50">
__________________
Chiloé
  #7 (permalink)  
Antiguo 01/07/2005, 14:19
Avatar de DoKyE  
Fecha de Ingreso: junio-2005
Mensajes: 144
Antigüedad: 12 años, 5 meses
Puntos: 0
haber explicame un pokito mas...
de donde quieres pasar variables?
para donde quieres pasar las variables?
__________________
Chiloé
  #8 (permalink)  
Antiguo 01/07/2005, 14:30
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
Hola, he probado ahora a poner:

echo '<meta http-equiv="refresh" content="0; URL= ../prueba/fichero.php?var=$valor">';

Y me redirecciona perfectamente, justo lo que quiero pero la variable $var en la página fichero.php no llega con su valor, aparece en la URL con $valor, no con el contenido.

Lo que quiero hacer es: tengo una variable $var y la quiero pasar a otro fichero, con algún tipo de redirección transaparente para el usuario, sólo eso.

Gracias por la ayuda.
  #9 (permalink)  
Antiguo 01/07/2005, 14:47
Avatar de DoKyE  
Fecha de Ingreso: junio-2005
Mensajes: 144
Antigüedad: 12 años, 5 meses
Puntos: 0
kitale la ultima comilla doble dejalo asi:

<? echo "<meta http-equiv='refresh' content='0; URL= ../prueba/fichero.php?var=$valor'>";?>
__________________
Chiloé
  #10 (permalink)  
Antiguo 01/07/2005, 14:47
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Pues, escapala en el string:
echo '<meta http-equiv="refresh" content="0; URL= ../prueba/fichero.php?var='.$valor.'">';
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #11 (permalink)  
Antiguo 01/07/2005, 14:57
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
No me funciona ninguna de las dos soluciones. Se queda actualizando la página indefinidamente.


Gracias por la ayuda.
  #12 (permalink)  
Antiguo 01/07/2005, 15:02
Avatar de DoKyE  
Fecha de Ingreso: junio-2005
Mensajes: 144
Antigüedad: 12 años, 5 meses
Puntos: 0
lo que no me queda claro es:
quieres llevar las variables de una pagina a otra para que ponerlas en un formulario?
como es la forma en la que quieres llevar esas variables?
como se llaman tus paginas inicio, destino?
__________________
Chiloé
  #13 (permalink)  
Antiguo 01/07/2005, 15:03
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
Hola, también he probado a sacar la línea del código PHP, así:

<meta http-equiv="refresh" content="0; URL= ../prueba/fichero.php?var=<?php echo $valor;?>">

y escribir la variable con un ECHO, pero también se queda actualizando indefinidamente.

Por qué no funciona? Debería funcionar de esta forma, no lo entiendo...
  #14 (permalink)  
Antiguo 01/07/2005, 15:08
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
Sí,pongo un ejemplo sencillo:

En pagina1.php tenemos, por ejemplo:

$var = 7;

y lo que quiero hacer es enviar esa variable a pagina2.php de forma "tranparente"(la forma es lo que está aún por descubrir) y luego mostrarla por pantalla.

Espero haberme explicado bien.

Gracias.
  #15 (permalink)  
Antiguo 01/07/2005, 15:08
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
A ver....Suponiendo que tenes, uno.php, y dos.php, si en uno pones:

$uno = "Este es el valor uno";
echo "<script>window.location = 'dos.php?uno=".$uno."'</script>";
exit

Y en dos.php poner

echo $_GET["uno"];

tendrás el valor "Este es el valor uno" impreso en la pantalla de dos.php....
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #16 (permalink)  
Antiguo 01/07/2005, 15:12
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
Hola, eso es javascript con PHP??

Necesito hacerlo con PHP sólo.

Gracias

Última edición por dominguez; 01/07/2005 a las 15:35
  #17 (permalink)  
Antiguo 01/07/2005, 15:18
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Ambas, pero...cual es la diferencia? o sea, es lo que necesitas o no?

PD: Sino hace lo mismo con header()...la diferencia esta casi unicamente en el cache del proceso.

PD2: Si no te das cuenta que eso es php y js, estas en el horno
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #18 (permalink)  
Antiguo 01/07/2005, 15:23
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
Hola, necesito hacerlo con PHP ya que el javascript puede estar deshabilitado.

Gracias.
  #19 (permalink)  
Antiguo 01/07/2005, 15:33
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
En realidad la variable que paso de un fichero a otro es un conjunto de registros obtenidos de una base de datos, que codifico para pasar por la URL, pero con el método que me has indicado me da error en la página.

Quizás sea demasiada información para pasar por la URL??
  #20 (permalink)  
Antiguo 01/07/2005, 15:36
Avatar de DoKyE  
Fecha de Ingreso: junio-2005
Mensajes: 144
Antigüedad: 12 años, 5 meses
Puntos: 0
que error te da?
__________________
Chiloé
  #21 (permalink)  
Antiguo 01/07/2005, 15:46
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
No muestra nada ya que en esa página sólo tengo código PHP que interactua con una base de datos, pero sí muestra en la esquina inferior izquierda el típico triangulito amarillo con el signo de admiración y dice al lado:

Listo pero con errores en la página

He probado el método pasándo números y cadenas y funciona, por lo que creo q van a ser demasiados datos para pasar por la URL no?

Otra cosa es que necesito hacer el proceso con PHP ya que el javascript puede estar deshabilitado.

Será imposible lo que intento hacer?? y no me quedará mas remedio que hacer la consulta a la base de datos en la propia página.

Gracias por el interés.
  #22 (permalink)  
Antiguo 01/07/2005, 16:30
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 14 años, 5 meses
Puntos: 0
En principio lo he solucionado utilizando una variable de sesión en la que el primer fichero escribe y el segundo lee.

Si a alguien se le ocurre una mejor idea que,por favor, la comunique a todos.


Gracias.
  #23 (permalink)  
Antiguo 01/07/2005, 16:58
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Cita:
Iniciado por nicolaspar
A ver....Suponiendo que tenes, uno.php, y dos.php, si en uno pones:

$uno = "Este es el valor uno";
echo "<script>window.location = 'dos.php?uno=".$uno."'</script>";
exit

Y en dos.php poner

echo $_GET["uno"];

tendrás el valor "Este es el valor uno" impreso en la pantalla de dos.php....
Por que solo con php? alguna razón lógica?
__________________
Mi punto de partida es Que Bueno Lo Nuevo
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




La zona horaria es GMT -6. Ahora son las 13:37.