Foros del Web » Programando para Internet » PHP »

paso de variable entre php´s

Estas en el tema de paso de variable entre php´s en el foro de PHP en Foros del Web. Necesito pasar una variable de un archivo php a otro.En el primero recojo el ID de un usuario registrado en una base de datos, y ...
  #1 (permalink)  
Antiguo 14/12/2011, 08:56
 
Fecha de Ingreso: mayo-2011
Ubicación: Valencia
Mensajes: 15
Antigüedad: 12 años, 11 meses
Puntos: 0
Pregunta paso de variable entre php´s

Necesito pasar una variable de un archivo php a otro.En el primero recojo el ID de un usuario registrado en una base de datos, y en el siguiente php he de mostrar toda la información que hay en la base de datos a cerca del mismo, pero para poder realizar la sentencia sql que me devolverá los valores que estoy buscando necesito pasarle el id del primer archivo .php al siguiente. Os agradezco mucho la ayuda acabo de terminar de estudiar y estoy de practicas en una empresa, mil gracias!!!
  #2 (permalink)  
Antiguo 14/12/2011, 09:10
Avatar de charlyalegret  
Fecha de Ingreso: septiembre-2011
Ubicación: Barcelona
Mensajes: 705
Antigüedad: 12 años, 7 meses
Puntos: 140
Respuesta: paso de variable entre php´s

puedes pasar las variables a través de la url o a través de sesiones, entre otros.

En internet puedes encontrar muchos manuales al respeto, busca paso de variables por url o sesiones en php!

Saludos
  #3 (permalink)  
Antiguo 14/12/2011, 09:11
 
Fecha de Ingreso: abril-2005
Mensajes: 29
Antigüedad: 19 años
Puntos: 1
Respuesta: paso de variable entre php´s

Buenas!

No entiendo bien que estas preguntando. No se si quieres poner un enlace en el primer php, que al pulsarlo te lleve al segundo. Esto sería:

<a href="segundophp.php?id=<?php echo $id;?>">Pulsa para ver la info</a>

Si quieres que redireccione automáticamente el primer php al segundo, puedes hacerlo así:

<?php
header("Location: segundophp.php?id=$id");
?>

Y sea de la primera o de la segunda forma, en el segundo php para recoger el valor sería:

$id=$_GET["id"];

o bien

$id=mysql_real_escape_string($_GET["id"]); //Si ya tienes una conexión mysql abierta, para poder utilizar directamente el id contra mysql sin riesgo

Si no, especifícate o danos más información para poderte ayudar mejor.

Un saludo!!
  #4 (permalink)  
Antiguo 14/12/2011, 09:15
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: paso de variable entre php´s

Tienes básicamente 2 formas de hacer lo que solicitas.

El valor puede ser pasado por $_GET o $_POST

para pasar un parámetro por $_GET solo necesitas concatenar los valores en la url del link

ejemplo.php
Código PHP:
<a href="pagina2.php?id=<? echo $id?>">ir a pagina 2</a>
Para pasarlo por post, deberías crear un formulario html.
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #5 (permalink)  
Antiguo 14/12/2011, 09:21
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: paso de variable entre php´s

Cita:
Iniciado por vall-k Ver Mensaje
<?php
header("Location: segundophp.php?id=$id");
?>
Eso esta mal, las rutas del header deben ser absolutas y compuestas anteriormente.

Código PHP:
$location "Location: segundophp.php?id=$id";
header($location); 
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #6 (permalink)  
Antiguo 14/12/2011, 09:57
 
Fecha de Ingreso: abril-2005
Mensajes: 29
Antigüedad: 19 años
Puntos: 1
Respuesta: paso de variable entre php´s

Cita:
Iniciado por h2swider Ver Mensaje
Eso esta mal, las rutas del header deben ser absolutas y compuestas anteriormente.

Código PHP:
$location "Location: segundophp.php?id=$id";
header($location); 
No quiero que esto se convierta en un post en el que nos empezamos a responder entre nosotros, así que solo diré que desconozco que versión de PHP utilizas, y no recuerdo si en alguna versión anterior realmente no se permitía esto, pero te puedo asegurar que actualmente se puede utilizar el header location tal y como lo he descrito (y juraría que lo utilizo así desde hace bastante tiempo). Si es que en alguna versión no se puede, si será de gran ayuda que nos lo hagas saber, si no haz la prueba y nos cuentas.

Un saludo y suerte a juanballester5 con su problema.
  #7 (permalink)  
Antiguo 14/12/2011, 10:14
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: paso de variable entre php´s

Justamente en el codigo que postie no puse la ruta absoluta (error de despiste) el tema de ponerlo en una variable anterior es por comodidad, aunque en alguna version anterior de php si era necesario.

http://ar.php.net/manual/es/function.header.php

"Nota:

HTTP/1.1 require una URI absoluta como argumento para » Location: incluyendo el esquema, nombre del host y ruta absoluta, pero algunos clientes aceptan también URIs relativas. Se puede usar $_SERVER['HTTP_HOST'], $_SERVER['PHP_SELF'] y dirname() para crear una URI absoluta desde una relativa:..."

De hecho también cabe destacar que después del location también es necesario colocar un exit para cortar y que php no procese luego de esa linea.

Saludos!
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives

Etiquetas: paso, sql, variables, usuarios
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 05:33.