Foros del Web » Programando para Internet » PHP »

Pasar variables de una página a otra.

Estas en el tema de Pasar variables de una página a otra. en el foro de PHP en Foros del Web. Hola, tengo un problema. Quiero pasar variables através de varias páginas. En la primera página tengo éste select: Código HTML: <select name= "concept" class= "navText" ...
  #1 (permalink)  
Antiguo 11/06/2009, 16:05
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Pasar variables de una página a otra.

Hola, tengo un problema.

Quiero pasar variables através de varias páginas.

En la primera página tengo éste select:

Código HTML:
<select name="concept" class="navText">
 <?php 
  $query_Recordset = "select id_concept, descrip_concept from conceptual";
$Recordset = mysql_query($query_Recordset, $conex) or die(mysql_error());
$row_Recordset = mysql_fetch_assoc($Recordset);
$totalRows_Recordset = mysql_num_rows($Recordset);
 
 do{
 ?>
  <option value="<?php echo $row_Recordset['id_concept']; ?>"> <?php echo $row_Recordset['id_concept']." ".$row_Recordset['descrip_concept']; ?> </option> 
 <?php
 }while($row_Recordset = mysql_fetch_assoc($Recordset));
 ?>
</select> 
En la segunda tengo ésto, después de definir la variable con el método post:

Código HTML:
<?php

  $query_Recordset = "select id_concept, descrip_concept from conceptual where id_concept=('".$concept."')";
$Recordset = mysql_query($query_Recordset, $conex) or die(mysql_error());
$row_Recordset = mysql_fetch_assoc($Recordset);
$totalRows_Recordset = mysql_num_rows($Recordset);
?>

<input type="text" disabled="disabled" value="<?php echo $row_Recordset['id_concept']." ".$row_Recordset['descrip_concept'];?>"  /> 
Y en la tercera quiero mostrar el "id_concept",¿ habrá alguna manera de pasar los datos? se los agradezco mucho de antemano.
  #2 (permalink)  
Antiguo 11/06/2009, 17:07
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: Pasar variables de una página a otra.

Hola, si ya tienes el id_concept lo pones en una variable $micodigo y lo puedes pasar por url

osea algo como esto:

Código PHP:
<a href="<?php echo "3rapagina.php?ID=$micodigo"?> >Ir a tercera pagina</a>
y en la tercera pagina lo recojes con: $recojo=$_GET['ID'] y ahi tienes tu variable, suerte

p.d. ponle comillas simples donde concatenas en tu textbox


Código PHP:
<input type="text" disabled="disabled" value="<?php echo $row_Recordset['id_concept'].' '.$row_Recordset['descrip_concept'];?>"  />
__________________
Quitenme la vida pero no la bebida.
  #3 (permalink)  
Antiguo 11/06/2009, 17:26
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Pasar variables de una página a otra.

Antes que nada muchas gracias por tu ayuda.

Había visto algo como ésto, pero no me sirve ya que yo estoy llenando un formulario, y no quiero que me pase a la siguiente página hasta que lo llene todo y de click en el botón, ¿habrá alguna manera en vez de pasar muchas variables por links, todas asociarlas a ése botón?

Saludos.
  #4 (permalink)  
Antiguo 11/06/2009, 17:36
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Pasar variables de una página a otra.

Tienes que usar javascript o ajax para poder verificar. Puedes hacerlo con solamente javascript para verificar si los campos estan vacios. Ajax es para que si quieres hacerlo en el servidor la verificacion. Pero lo mejor es que lo hagas con javascript para que verifique si todo esta correcto y en el form escribes la funcion que verifica la informacion ejemplo

Código PHP:
<script language="javascript">
function 
verificarInfo(){
  
//todas las veces que salga que un campo este vacio le escribes 
  
if(condicion_para_verificar_si_campo_esta_vacio){
    return 
false;
  }
  
//si pasa la prueba de todos los if escribes
  
return true;
}
</script>

//El return dentro del onsubmit es importante para que no te redireccione 
//cuando le den al boton de submit o cuando presionen enter si esta algun campo vacio.  
//Si esta lleno todos los campos entonces te redirecciona
<form name="form1" action="pagina_para_agregar_info.php" onsubmit="return verificarInfo()" method="post">
..... aqui van los campos etc.
</form> 
  #5 (permalink)  
Antiguo 11/06/2009, 17:47
 
Fecha de Ingreso: junio-2009
Mensajes: 8
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Pasar variables de una página a otra.

Hola Gaug

Tamibien puedes usar sessiones...

Te paso un pequeño ejemplo dime si te es util.

Copias y pega esta funcionando...

form.php
Código PHP:

<html>
<
head>
<
title>Formulario</title>
</
head>
<
body>
<
form id="form1" name="form1" method="post" action="form_2.php">
  <
label>
  <
select name="concept" id="concept">
    <
option>Seleccionar...</option>
    <
option value="Banana">Banana</option>
    <
option value="Manzana">Manzana</option>
    <
option value="Pera">Pera</option>
  </
select>
  </
label>
  <
label>
  <
input type="submit" name="Submit" value="Enviar" />
  </
label>
</
form>
</
body>
</
html

form_2.php
Código PHP:
<?php
// Inicias sesion
session_start();

// Aqui recibes la variable yo lo envio mediante un POST y la guardas en la sesion concept
$_SESSION["concept"]=$_POST["concept"];

echo 
" Muestro Contenido de Session concept: ".$_SESSION["concept"];

?>
<form name="form1" method="post" action="form_3.php">
  <label>
  <input name="otro" type="text" id="otro" value="<?php echo "Aqui algo..."?>">
  </label>
  <label>
  <input type="submit" name="Submit" value="Enviar">
  </label>
</form>
form_3.php
Código PHP:
<?php
// Inicias sesion
session_start();

//Recupero el Valor de concept que estaba en session
$concept=$_SESSION["concept"];

$otro=$_POST["otro"];
?>
<html>
<head>
<title>Resultados...</title>
</head>

<body>

<?php
echo " Muestro el Valor de concept: <b>$concept</b> ";
echo
" <br><br> "// Salto de Lineas...
echo " Muestro el Valor del formulario de la segunda pagina...: <b>$otro</b> ";
?>
</body>
</html>
Por favor dime si algo asi estas buscando

Saludos
  #6 (permalink)  
Antiguo 11/06/2009, 17:55
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Pasar variables de una página a otra.

Muchas gracias abimaerlrc, pero lo que yo busco no es verificar si están vacíos o no los campos, sino que mande todas las variables de cada campo a la siguiente página, pero el método que mencionó cesarpunk no me serviría ya que sería un link por cada variable y yo necesito que me mande todas las variables através del botón al final del form. ¿Hay manera de hacer esto con sólo PHP y JavaScript?
  #7 (permalink)  
Antiguo 11/06/2009, 17:59
 
Fecha de Ingreso: junio-2009
Mensajes: 231
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Pasar variables de una página a otra.

Le diste una mirada a lo que escribi?

Espero tu respuesta
  #8 (permalink)  
Antiguo 11/06/2009, 18:03
 
Fecha de Ingreso: junio-2009
Mensajes: 231
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Pasar variables de una página a otra.

Cita:
Iniciado por Gaug Ver Mensaje
pero el método que mencionó cesarpunk no me serviría ya que sería un link por cada variable y yo necesito que me mande todas las variables através del botón al final del form. ¿Hay manera de hacer esto con sólo PHP y JavaScript?
Tambien Puedes usar campos oculto en el segundo formulario...

Cuando ya tienes la variable recibida $concept haces esto...
Código HTML:
  <input name="concept" type="hidden" value="<?php echo $concept ?>"> 
  #9 (permalink)  
Antiguo 11/06/2009, 18:07
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Pasar variables de una página a otra.

Muchas gracias a todos, pero me funcionó lo de las sesiones que mencionó logx, les agradezco su intención de todas formas
  #10 (permalink)  
Antiguo 11/06/2009, 18:27
 
Fecha de Ingreso: junio-2009
Mensajes: 231
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Pasar variables de una página a otra.

bien

Chao
  #11 (permalink)  
Antiguo 11/06/2009, 18:29
 
Fecha de Ingreso: junio-2009
Mensajes: 8
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Pasar variables de una página a otra.

Agradesco tu respuesa

Saludos Y suerte
  #12 (permalink)  
Antiguo 12/06/2009, 10:32
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Pasar variables de una página a otra.

Revivo el tema, porque me surgió otro problema.

Es sobre lo mismo. Hagamos de cuenta que estoy en la primera página tengo un checkbox que se llama capitalizable y dependiendo si lo seleccioné o no, me muestra diferentes campos en la tercera página, les muestro un pedazo del código para que me puedan entender mejor:

Código HTML:
<?php if(isset($_POST['capitalizable']))
{ ?>

<label>Tipo de Objeto:</label>

<select name="tipo_objeto" id="tipo_objeto" class="bodytext">
<?php
 
  $query_Recordset = "select tt, descrip_tt from tipo_objeto";
$Recordset = mysql_query($query_Recordset, $conex) or die(mysql_error());
$row_Recordset = mysql_fetch_assoc($Recordset);
$totalRows_Recordset = mysql_num_rows($Recordset);

do{ ?>
<option value="<?php $row_Recordset['tt']?>"><?php echo $row_Recordset['tt'].'    -    '.$row_Recordset['descrip_tt'];?> </option>
<?php }while($row_Recordset= mysql_fetch_assoc($Recordset)); ?>
</select>

<label>&nbsp;&nbsp;Campo:</label>
<select name="campo" id="campo" class="bodytext">
<?php
 
  $query_Recordset = "select id_campo, descrip_campo from campo";
$Recordset = mysql_query($query_Recordset, $conex) or die(mysql_error());
$row_Recordset = mysql_fetch_assoc($Recordset);
$totalRows_Recordset = mysql_num_rows($Recordset);

do{ ?>
<option value="<?php $row_Recordset['id_campo']?>"><?php echo $row_Recordset['id_campo']."    -    ".$row_Recordset['descrip_campo'];?> </option>
<?php }while($row_Recordset= mysql_fetch_assoc($Recordset)); ?>
</select> 
Éstos dos de arriba son unos de los que se muestran, pero el problema aquí es que como yo quiero que ambos se muestren aunque este seleccionada o no la checkbox, los repito, osea pongo los mismos campos 2 veces, en diferentes "if" obviamente. Pero al momento de pasar los valores a la otra página no se me pasan, independientemente de si estuvo seleccionada o no la checkbox, y sí, aunque los campos se repitan les cambié el nombre para que no diera problemas. ¿Alguna sugerencia de que podría estar haciendo mal?

Se los agradezco, saludos

EDIT: Ya quedó resuelto este problema, fue por no poner "echo" en los values hehe, tengo otro problema pero como no tiene nada que ver con esto abriré un nuevo tema.

Última edición por Gaug; 12/06/2009 a las 12:17
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 01:18.