Foros del Web » Programando para Internet » PHP »

Como puedo hacer para saber que un usuario ha entrado y modificado cuales campos

Estas en el tema de Como puedo hacer para saber que un usuario ha entrado y modificado cuales campos en el foro de PHP en Foros del Web. Hola a todos, Quisiera hacer un programa el cual me liste los usuarios que han entrado en su cuenta y han efectuado alguna modificación en ...
  #1 (permalink)  
Antiguo 05/06/2013, 21:55
 
Fecha de Ingreso: agosto-2012
Ubicación: Barcelona
Mensajes: 243
Antigüedad: 12 años, 4 meses
Puntos: 1
Como puedo hacer para saber que un usuario ha entrado y modificado cuales campos

Hola a todos,

Quisiera hacer un programa el cual me liste los usuarios que han entrado en su cuenta y han efectuado alguna modificación en sus datos y cuales datos han modificado.

Si me lo pudieran explicar con un ejemplo...

Gracias y saludos
  #2 (permalink)  
Antiguo 05/06/2013, 22:01
Avatar de wizanchez  
Fecha de Ingreso: junio-2013
Ubicación: bogota
Mensajes: 120
Antigüedad: 11 años, 6 meses
Puntos: 6
Respuesta: Como puedo hacer para saber que un usuario ha entrado y modificado cuales

Lonque yo hago es en la tabla donde tengo la informacion coloco un campo de tipo timestamp hablando de mysql el me actualiza automaticamente la fecha asi sabre si se modifico
  #3 (permalink)  
Antiguo 06/06/2013, 12:55
 
Fecha de Ingreso: agosto-2012
Ubicación: Barcelona
Mensajes: 243
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: Como puedo hacer para saber que un usuario ha entrado y modificado cuales

Hola,

Gracias por responder, pero me puedes decir como puedes saber que campo ha modificado?

Gracias y saludos
  #4 (permalink)  
Antiguo 06/06/2013, 13:29
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Como puedo hacer para saber que un usuario ha entrado y modificado cuales

Es un tema medio complicado... Porque no hay un registro exacto de lo que hace la modificación.
Una opción es generar una tabla de logs, donde puedas asentar todos los cambios introducidos por cada usuario, de modo de tener cierta trazabilidad.
En ese caso en un campo VARCHAR se va guardando en cada ocasión un conjunto desnormalizado de datos con los cambios, incluyendo ambos valores: El original y el nuevo.
Otra opción es que cada cambio genere un registro nuevo y de de baja el anterior, entendiendo por baja la inserción de la fecha de desactivación del anterior registro, y por quien. El nuevo en cambio, tendría ese campo en NULL.
En definitiva, no hay una forma única de hacerlo. Depende de tu ingenio y tus necesidades.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 06/06/2013, 13:31
Avatar de wizanchez  
Fecha de Ingreso: junio-2013
Ubicación: bogota
Mensajes: 120
Antigüedad: 11 años, 6 meses
Puntos: 6
Respuesta: Como puedo hacer para saber que un usuario ha entrado y modificado cuales

- la otra seria hacer un trigger a la tabla el si sabe quien hace cambio y que campo.
- pero seria muy largo nose
__________________
---------
cubesoftechnology.com
Wizanchez,,
  #6 (permalink)  
Antiguo 06/06/2013, 13:40
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Como puedo hacer para saber que un usuario ha entrado y modificado cuales

Terminarías haciendo lo mismo: Alguna tabla donde registres las acciones llevadas a cabo.
Usar triggers no es una buena idea, porque debes definir uno por cada evento, en aquellos caso donde el DBMS no soporte triggers multieventos.
Es más simple hacer un trabajo combinado entre base y aplicación.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 06/06/2013, 13:58
Avatar de wizanchez  
Fecha de Ingreso: junio-2013
Ubicación: bogota
Mensajes: 120
Antigüedad: 11 años, 6 meses
Puntos: 6
Respuesta: Como puedo hacer para saber que un usuario ha entrado y modificado cuales

- lo que digo es que con el trigger es lo mas logico, quizas no es bueno para el que se basa mucho en un lenguaje que no es precisamente SQL, pero para eso hay opciones, lo que no veo es que tanto se necesite saber que se modifico de cada campo,
- yo en la empresa que trabajo que hacen soluciones empresariales, se utiliza mucho para saber quien modifico que pero hacemos una auditoria en no mas de 3 o 4 campos y eso lo hacemos con trigger, pues igual hay mas libertad en hacer cosas
__________________
---------
cubesoftechnology.com
Wizanchez,,

Etiquetas: campos, cuales, usuario, usuarios
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 03:40.