Foros del Web » Programando para Internet » PHP »

Actualizar toda una columna de una vez

Estas en el tema de Actualizar toda una columna de una vez en el foro de PHP en Foros del Web. Hola, necesito por favor que me ayuden con lo siguiente: Estoy escribiendo un script tipo agenda, que me muestra una hoja con tantos campos de ...
  #1 (permalink)  
Antiguo 16/03/2002, 17:20
Avatar de Chaudx  
Fecha de Ingreso: marzo-2002
Ubicación: Quilpué, Chilito lindo
Mensajes: 345
Antigüedad: 22 años, 8 meses
Puntos: 2
Actualizar toda una columna de una vez

Hola, necesito por favor que me ayuden con lo siguiente:
Estoy escribiendo un script tipo agenda, que me muestra una hoja con tantos campos de texto como días tenga el mes.
A cada campo le pongo como nobre el día del mes.
Tengo una tabla con tantas filas como día tenga el mes y distintas columnas para un dato cualquiera, ya sea numérico o de caracter.
Lo que necesito es que una vez completado el formulario, todos los datos ingresados segun el día se actualizen en la tabla de la base de datos de acuerdo a la columna indicada y todo de una sola vez.
Ejemplo: dentro de la tabla existe una columna "santoral", en donde ingreso los santorales de cada día.
El formulario me muestra los 31 días del més de marzo con un campo de texto (no areatext) en donde a cada día le agrego el santoral que corresponde. Luego lo envío para su procesamiento pero el formulario me registra el día de cada mes y no el nombre.
como dato anexo, he probado distintas formas de manejar las variables: por ejemplo
<input type=text name=santo[$dia]>, o sólo por el día.
Espero que me ayuden pliiiiiiiiiiisssssssss
estaré eternamente agradecido con usteds. :(
  #2 (permalink)  
Antiguo 16/03/2002, 21:00
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Re: Actualizar toda una columna de una vez

Mejor sera q pongas el codigo q usas para insertar los datos en tus tablas ..

Tal vez solo sea un fallo de "INSERT" .. o bien incluso sea un fallo de estructura de tu base de datos.

Un saludo,
  #3 (permalink)  
Antiguo 17/03/2002, 23:10
Avatar de Chaudx  
Fecha de Ingreso: marzo-2002
Ubicación: Quilpué, Chilito lindo
Mensajes: 345
Antigüedad: 22 años, 8 meses
Puntos: 2
Re: Actualizar toda una columna de una vez

El código del formulario para cada cuadro de texto es más o menos el siguiente:
<input type="text" name="santo[1]">, este cuadro se va aumentando su numeración conforme aumentan los días hasta llegar al último día más o menos de la siguiente manera. <input type="text" name="santo[31]">
La columna ya tiene las filas creadas por lo tanto el objetivo es actualizar los datos.
Luego en el script tengo una variable $dia y una $ultdia la cual representa el último día del mes ej. 31
el código para actualizar los datos es el que sigue:
La variable $ultdia ya está definida por medio de otro código.
La variable $mesx representa el número del mes de esta forma la variable fecha queda por ejemplo:
si el día es el 15 de marzo = 153
$dia=1;//Primer día del mes
while($dia<=$ultdia){
$fecha = $dia*10+$mesx;
$sql= "UPDATE `valores` SET `santo` = $HTTP_POST_VAR[santo[$dia]] where 'fecha' = $fecha";
$resultado = mysql_query($sql);
$dia++;
}
Creo que debo aclarar que las variables llegan por medio del metodo post.
Otro punto importante es que he probado reemplazando la variable $HTTP_POST_VAR[santo[$dia]] por $santo[$dia], pero nada.
Por favor si esto está mal ruego que me ayuden.
De antemano graciaaaaaaaaaaaasssssss ;)
  #4 (permalink)  
Antiguo 18/03/2002, 22:08
Avatar de Chaudx  
Fecha de Ingreso: marzo-2002
Ubicación: Quilpué, Chilito lindo
Mensajes: 345
Antigüedad: 22 años, 8 meses
Puntos: 2
Re: Actualizar toda una columna de una vez

;) Gracias y mil perdones por el tiempo que les hice perder, ya resolví mi problema, el error estaba en el manejo de variables.
era tan simple como anteponer otro $ a la variable que indicaba el día

pd: Gracias PHP por favor concedido
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 21:33.