Foros del Web » Programando para Internet » PHP »

almacenar informacion

Estas en el tema de almacenar informacion en el foro de PHP en Foros del Web. Hola a todos; ojala y alguien me pueda ayudar. Necesito guardar registros en php, pero es de uno a muchos, se como guardar un registro ...
  #1 (permalink)  
Antiguo 24/02/2004, 09:41
 
Fecha de Ingreso: febrero-2004
Mensajes: 1
Antigüedad: 20 años, 1 mes
Puntos: 0
Pregunta almacenar informacion

Hola a todos; ojala y alguien me pueda ayudar. Necesito guardar registros en php, pero es de uno a muchos, se como guardar un registro lineal pero en este caso es de un registro en una tabla por varios en otra de un mismo usuario.
  #2 (permalink)  
Antiguo 24/02/2004, 10:07
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 5 meses
Puntos: 11
podrías poner un ejemplo de lo que quieres lograr? para entender mejor y asi poder ayudarte.
  #3 (permalink)  
Antiguo 24/02/2004, 12:26
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pero .. tienes ya claro la estructura de tus tablas/BD modelo. ??

En principio .. si quieres una relación 1 -> N deberías tener algo tipo:

tabla padre
ID_tabla_padre ------->
campo1
campo2
campo3

Y la hija
ID_tabla_hija
ID_tabla_padre <-------
campo1
campo2
campoN

El "ID_tabla_padre" en la tabla hija es la "clave foránea" ..

Si haces un "INSERT" en la tabla padre y a la vez uno en la tabla hija .. debes obtener el último ID generado por la tabla padre para poder usarlo en el INSERT de la hija ..

Para eso tienes por ejemplo desde PHP la función:
mysql_insert_id() y su equivalente en SQL (más seguro): LAST_INSERT_ID()

Màs info:
http://www.php.net/manual/en/functio...-insert-id.php

Y si todo este proceso lo metes en una transacción SQL mejor todavía (para bloquear la tabla por el instante que haces estas operaciones "atómicas" ..)

más info:
www.mysql.com

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 17:41.