Foros del Web » Programando para Internet » PHP »

Insertar datos en una tabla con filas creadas

Estas en el tema de Insertar datos en una tabla con filas creadas en el foro de PHP en Foros del Web. Hola!. Bueno, tengo una tabla con 6 campos: ID- Media - Votos - Nombre - Descripcion - URL Yo hice un programita en php que ...
  #1 (permalink)  
Antiguo 02/12/2009, 05:35
 
Fecha de Ingreso: noviembre-2009
Mensajes: 164
Antigüedad: 14 años, 5 meses
Puntos: 0
Insertar datos en una tabla con filas creadas

Hola!. Bueno, tengo una tabla con 6 campos:
ID- Media - Votos - Nombre - Descripcion - URL

Yo hice un programita en php que me insertaba directamente cien mil filas, pero que solo incluia ID-Media-Votos (valores: 1,0,0 - 2,0,0, etc.), pero los campos Nombre, Descripcion y URL fueron agregados después.
No tengo asignada una clave principal, porque me obliga a poner autoincremento y las filas ya están creadas.
Estoy haciendo un formulario que dice:
NOMBRE:
DESCRIPCION:
URL:
Para poder introducir los datos a la tabla desde la web, mediante código PHP.
Mi pregunta es: ¿Cómo puedo introducir los datos en Nombre - Descripcion - URL y no ID- Media - Votos ?
Creo que el script php debería buscar el PRIMER ID cuyo valor en "NOmbre" y "descripcion" y "URL" sean 0 o vacíos (o sea, que no se haya colocado nada).

Además, después se complica un poco, pero sólo quiero saber como puedo hacer esto de insertar datos en la tabla ya con las filas creadas.
Muchas gracias
  #2 (permalink)  
Antiguo 02/12/2009, 06:06
 
Fecha de Ingreso: noviembre-2009
Mensajes: 164
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Insertar datos en una tabla con filas creadas

Yale puse una clave primaria a Id. ¿Alguiensabe?
  #3 (permalink)  
Antiguo 02/12/2009, 06:16
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 14 años, 6 meses
Puntos: 5
Respuesta: Insertar datos en una tabla con filas creadas

En caso de que las filas ya estubieran creadas con un solo valo (id) y los demas campos como NULL, deberias hacer un update, todo esto, segun la id que quieras insertarle el valor.

mi pregunta es, a cualquier id insertarle el formulario? o a la primera que encuentra?
Saludos!
  #4 (permalink)  
Antiguo 02/12/2009, 06:22
 
Fecha de Ingreso: noviembre-2009
Mensajes: 164
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Insertar datos en una tabla con filas creadas

Gracias Fairy_Boy. En teoría es al primer id cuyo valores en "nombre", "descripcion" y "url" estén vacíos.
Pero en realidad incluiré botones de opcion, ya que de los botones que elija usaré un "between" para que seleccione cierto rango de registros (por eso se complica).
Pero sí, seria el primer ID de un rango de registros que no tenga datos en "nombre", "descripcion" y "url" estén vacíos.
Pregunta: ¿Me conviene crear la tablas de nuevo o con UPDATE puedo hacerlo igualmente? Ya he ingresado como mil registros.
  #5 (permalink)  
Antiguo 02/12/2009, 06:41
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 14 años, 6 meses
Puntos: 5
Respuesta: Insertar datos en una tabla con filas creadas

En realidad, si es muy muy necesario que las tablas esten ya creadas, dejalas y haces las validaciones correspondientes para que inserte el registro solo en donde los 3 campos sean iguales a null.
pero en otro caso, podrias dejar la opcion, que al insertar el o lo nuevos registros, inserte todos los campos, incluso el de la ID ya que se autogenera y no supone un mayos problema.
  #6 (permalink)  
Antiguo 02/12/2009, 06:46
 
Fecha de Ingreso: noviembre-2009
Mensajes: 164
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Insertar datos en una tabla con filas creadas

Lo que pasa es que una opción de inserción es entre los registros 1 a 1000, otra opcion es de 1001 a 2000 y así sucesivamente. Cómo le digo que inserte la fila (id,media,votos,nombre,descripcion,url) = (1585,0,0,nombre,descripcion,url) si la fila id=1584 no existe?
Por eso creo que las filas deben necesariamente estar creadas (aunque en el fondo no se si el razonamiento es correcto)
Lo que estoy pensando es en modificar los campos nombre, descripcion y url para que el valor por defecto sean 0.
Bueno, tengo la clave primaria ID, la dejo o la elimino? Gracias por todo

Acabo de cambiar los valores por defecto de nombre, descripcion y url por 0. Así buscaría, supongamos, de 1001 a 2000 el menor valor en el cual $nombre=0 (haría un bucle). Supongamos que nos da el id=1354, entonces le sumo 1 y el 1355 empezaría a llenarlo.
  #7 (permalink)  
Antiguo 02/12/2009, 06:57
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 14 años, 6 meses
Puntos: 5
Respuesta: Insertar datos en una tabla con filas creadas

Segun lo que ahora entiendo, en ese caso, seria mejor tener una variables (un contador) que valla incrementandose al momento de insertar un registro, asi siempre tendras el numero total de registros ya ingresados en la BD y en caso de que cierres las pag y se pierda ese contador, solo deberias acceder a la BD y sacar el ultimo registro (la mayor ID) y sabras cuantos tienes, luegos es cosa de seguir insertando y sumando a la ID para que valla cambiando.
nose si me entiendo.
=)
  #8 (permalink)  
Antiguo 02/12/2009, 07:33
 
Fecha de Ingreso: noviembre-2009
Mensajes: 164
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Insertar datos en una tabla con filas creadas

Podría ser. Tendría que tener una parte del script php que busque los valores de los registros que aún no se han llenado en nombre, descripcion y url (al menos 1 de ellos, por ej., nombre) y los almacene en variables. Ejemplo:
_ Buscar del 1 al 1000: El primer valor en nombre que esté vacío y lo almacene como $id1to1000
_ Buscar del 1001 al 2000: El segundo valor en nombre que esté vacío y lo almacene como $id1001to2000
Y asi sucesivamente.
Luego, usaría estas variables para que me inserte en mi tabla "rank" los valores donde yo quiero, por ejemplo:

Cita:
UPDATE rank SET nombre="$nombre", descripcion="$descripcion", url="http://www.url.com" WHERE id=$id1to1000;
No se si la sintaxis es correcta con la "coma" (,) entre los valores a llenar
  #9 (permalink)  
Antiguo 02/12/2009, 07:43
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 14 años, 6 meses
Puntos: 5
Respuesta: Insertar datos en una tabla con filas creadas

La idea que te di, era para hacer lo que dices, pero con una BD sin crear, a medida que la vas llenando, los vas contando, asi nunca tendrias algun registro con campos nulos.
pero en caso de que tu quieras hacerlo de esa forma (con campos ya creados) tendrias que hacerlo asi como dices, buscar en donde porlomenos "un" campo este nulo y ahi actualizar dicho registro.
en cuanto a la consulta,nose bien si te resulara con esas comillas dobles, en caso contrario, usa esta.

"UPDATE carpetas SET camp_nombre = '".$nombre."', camp_descripcion = '".$descripcion."', camp_url = '".$url."' WHERE camp_id = '".$id."'"

Saludos!
  #10 (permalink)  
Antiguo 02/12/2009, 07:46
 
Fecha de Ingreso: noviembre-2009
Mensajes: 164
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Insertar datos en una tabla con filas creadas

Gracias y despues te digo si pude hacerlo.
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 04:24.