Foros del Web » Programando para Internet » PHP »

pasar valor de id en secuencia de formularios

Estas en el tema de pasar valor de id en secuencia de formularios en el foro de PHP en Foros del Web. Hola tengo un pequeño inconveniente y necesito su ayuda. Tengo una serie de formularios en donde uso un id_usuario automatico que se incrementa cada vez ...
  #1 (permalink)  
Antiguo 13/08/2009, 15:12
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 14 años, 9 meses
Puntos: 0
pasar valor de id en secuencia de formularios

Hola tengo un pequeño inconveniente y necesito su ayuda.

Tengo una serie de formularios en donde uso un id_usuario automatico que se incrementa cada vez que se ingresa un nuevo registro pero al pasar del formulario 1 al 2 no logro que me muestre por ejemplo si estoy ingresando el usuario 2 en la secuencia los 5 formularios deberian de presentar el 2 en cada formulario y no lo hace como puedo hacer esto. Perdon no se si me explique pero soy novata y necesito ayuda.

Última edición por edanalvi; 13/08/2009 a las 17:39
  #2 (permalink)  
Antiguo 13/08/2009, 15:13
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: pasar valor de id en secuencia de formularios

Tendrias que escribir el codigo para poder indicarte que debes corregir
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 13/08/2009, 15:19
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: pasar valor de id en secuencia de formularios

Aqui esta el codigo del primer formulario
<?php
require_once("conexion.php");
require_once("fondo.html");

?>
<form name='frm_usuario_principal' method='post' action='nuevo1.php'>

<?php
$query = @mysql_query("SELECT MAX(id_usuario) FROM usuario_principal");
$last_id_usuario= @mysql_result($query,0);
?>
N&uacute;mero de Registro:
<INPUT TYPE='text' name='id_usuario' value="<?php echo $last_id_usuario+1?>" size='5'readonly>
<center><input type='submit' value='Guardar' name='Save' onclick="location.href='nuevo1.php?id_usuario=<?=$ _POST['id_usuario']?>'"> </center>
<center><input type='button' value='Regresar' name='Cancelar'onclick="javascript:history.go(-1);"> </center>


Luego debe ir al otro formulario que tambien tiene el mismo id_usuario (que deberia mantenerlo pero no lo hace)
  #4 (permalink)  
Antiguo 13/08/2009, 15:43
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: pasar valor de id en secuencia de formularios

usa el metodo GET creo que te funcionaria mejor ;)
__________________
Hospedaje Web al mejor costo!
  #5 (permalink)  
Antiguo 13/08/2009, 15:54
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: pasar valor de id en secuencia de formularios

Es mala idea obtener la ID de esa manera, imagina que dos o mas usuarios estan al mismo tiempo llenando el formulario, todos tendran la misma ID.

Lo mejor es llevar todos los datos a traves de los formularios, ya sea en variables de sesion (optimo) o con campos tipo hidden y, cuando insertes el registro en la base de datos obtengas la ID con mysql_insert_id()
__________________
- León, Guanajuato
- GV-Foto
  #6 (permalink)  
Antiguo 13/08/2009, 15:55
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: pasar valor de id en secuencia de formularios

pero no creo que afecte, ya que dicha variable no creo que sirva como "identificación en una DB" supongo que es solo para llevar un conteno de forms, no le veo otra utilidad. Saludos.
__________________
Hospedaje Web al mejor costo!
  #7 (permalink)  
Antiguo 13/08/2009, 16:30
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: pasar valor de id en secuencia de formularios

El id_usuario si es identificador (sirve para identificar a un nuevo registro o paciente en este caso).
Perdon entonces que hago? no entendi bien.
  #8 (permalink)  
Antiguo 13/08/2009, 16:46
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: pasar valor de id en secuencia de formularios

Para dar de alta no uses una ID hasta que se haya completado el registro (o hasta que tengas que insertarlo en la base de datos), si necesitas para algo la ID asignada al nuevo registro, simplemente la obtienes con mysql_insert_id(), en el mensaje anterior te deje un enlace al manual para que veas como se usa.
__________________
- León, Guanajuato
- GV-Foto
  #9 (permalink)  
Antiguo 13/08/2009, 16:47
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: pasar valor de id en secuencia de formularios

voy de acuerdo con triby. Saludos
__________________
Hospedaje Web al mejor costo!
  #10 (permalink)  
Antiguo 13/08/2009, 17:40
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: pasar valor de id en secuencia de formularios

No puedo tener el id en los fomularios si le doy referencia de una formulario a otro?
  #11 (permalink)  
Antiguo 13/08/2009, 17:50
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: pasar valor de id en secuencia de formularios

Claro que puedes, ya sea por GET, POST o sesiones, el problema te lo dije ya, si dos o mas personas estan al mismo tiempo realizando un nuevo registro, todos tendran la misma ID y te representara mayores problemas al tratar de insertar/actualizar en la base de datos.

Por GET, solo agregas al action del form:
<form method="get" action="pagina.php?var1=valor1&user=<?php echo $user; ?>">

Por GET o POST solo agregas un campo hidden:
<input type="hidden" name="user" value="<?php echo $user; ?>" />

Por sesiones:
Primero creas la variable de sesion: $_SESSION['user'] = $ultimo_registro_en_bdd + 1;
Y lo obtienes cada vez que lo necesites en los siguientes formularios: $user = $_SESSION['user'];
Necesitaras agregar session_start(); al principio de tus scripts para que funcionen las sesiones.
__________________
- León, Guanajuato
- GV-Foto
  #12 (permalink)  
Antiguo 14/08/2009, 14:41
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: pasar valor de id en secuencia de formularios

Disculpa tanta molestia pero no se si entedi bien, lo deje asì pero igual sigue sin funcionar. Definitivamente por tu sugerencia utilizare session pero no se como.
<?php
session_start();

require_once("conexion.php");
require_once("fondo.html");

?>
<html>
<?php
$_SESSION['id_usuario'];
?>
<?php
$query = @mysql_query("SELECT MAX(id_usuario) FROM usuario_principal");
$last_id_usuario= @mysql_result($query,0);
?>

N&uacute;mero de Registro:
<INPUT TYPE='text' name='id_usuario' value="<?php echo $_SESSION[$id_usuario];?>" size='5'readonly>

<center><input type='submit' value='Guardar' name='Save'>
<input type='button' value='Regresar' name='Cancelar'
onclick="javascript:history.go(-1);"> </center>
</html>
Puedes revisarmelo

Mil Gracias
  #13 (permalink)  
Antiguo 14/08/2009, 14:50
Avatar de jago86  
Fecha de Ingreso: abril-2008
Ubicación: Ibarra - Ecuador
Mensajes: 77
Antigüedad: 16 años
Puntos: 1
Respuesta: pasar valor de id en secuencia de formularios

Es facil, despues de hacer un insert simplemente obtienes el último id con la funcion mysql_insert_id(), guardas en una variable y esa variable la envias por GET o POST al siguiente formulario...
__________________
echo "i > u"
  #14 (permalink)  
Antiguo 16/08/2009, 15:53
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: pasar valor de id en secuencia de formularios

Alguien que me pueda ayudar lo agradeceria mucho, de verdad lo necesito.

<?php
session_start();

require_once("conexion.php");
require_once("fondo.html");

?>
<html>
<?php
$id_usuario=mysql_insert_id($conexion);
?>

<?php
$_SESSION['user'] = $last_id_usuario +1
?>
&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp;
N&uacute;mero de Registro:
<INPUT TYPE='text' name='id_usuario' value="<?php echo $user = $_SESSION['user'];?>" size='5'readonly>


<center><input type='submit' value='Guardar' name='Save'>
<input type='button' value='Regresar' name='Cancelar'
onclick="javascript:history.go(-1);"> </center>
</html>

Por favor necesito que alguien me revise este codigo

Última edición por edanalvi; 25/08/2009 a las 22:58
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 12:41.