Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] No actualizar todos los campos de un formulario

Estas en el tema de No actualizar todos los campos de un formulario en el foro de PHP en Foros del Web. Tego un formulario con varios campos y según la necesidad se cambiará uno o más valores de dichos campos. Yo envío todo el formulario y ...
  #1 (permalink)  
Antiguo 18/05/2018, 16:22
Avatar de bandolera  
Fecha de Ingreso: abril-2009
Mensajes: 613
Antigüedad: 15 años
Puntos: 7
Pregunta No actualizar todos los campos de un formulario

Tego un formulario con varios campos y según la necesidad se cambiará uno o más valores de dichos campos.
Yo envío todo el formulario y hago el update de todos los campos, hayan sido modificados o no sus valores.

Código PHP:
       $query "UPDATE tabla SET campo2='".$var->campo2."',
                                   campo3="
.$var->campo3.",
                                   campo4="
.$var->campo4."
                                   campo5="
.$var->campo5."
                 WHERE campo1="
.$var->campo1
Mi pregunta es, cómo puedo filtrar y actualizar solo el o los campos que fueron modificados. O no es necesario?
Lo que hago afecta el performance?
Gracias.
__________________
Todos somos iguales. NO! a la violencia de género.
  #2 (permalink)  
Antiguo 18/05/2018, 16:53
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: No actualizar todos los campos de un formulario

Dado que no puedes saber si el usuario modificó o no el valor del campo (podrías con js pero sería muy laborioso) lo recomendable es sobreescribir los valores en la tabla cada vez que se guarde. En mi opinión esto ne debería afectar mucho el rendimiento.

Sólo si quisieras llevar un log de exactamente qué fue lo que se cambió, podrías hacer una consulta antes de hacer la actualización, de este modo podrías comparar lo que había antes con lo nuevo. Esto sí afectaría un poco el rendimiento.
  #3 (permalink)  
Antiguo 20/05/2018, 16:02
 
Fecha de Ingreso: abril-2011
Mensajes: 168
Antigüedad: 13 años
Puntos: 5
Respuesta: No actualizar todos los campos de un formulario

Como no sabes que campos va a actualizar el usuario, lo mas lógico es que pongas todas las tablas y campos que depronto va a actualizar el usuario, en php es muy rapida la consulta.

Código PHP:
Ver original
  1. WHERE campo1=".$var->campo1; aqui el campo 2,3 y asi.
  #4 (permalink)  
Antiguo 20/05/2018, 22:56
Avatar de anfergon  
Fecha de Ingreso: junio-2009
Mensajes: 44
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: No actualizar todos los campos de un formulario

Creo que lo mejor es verificar con isset() si los campos existen y luego "armar" el UPDATE con los campos que quedan.

Etiquetas: Ninguno
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 22:50.