Ver Mensaje Individual
  #8 (permalink)  
Antiguo 30/12/2007, 11:07
Keysher
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Re: [pedido] Sistema de encuestas

Personalmente preferiría usar más de una tabla, aún pudiendose hacer sólo con una, lo veo todo más claro con varias.

Yo tenía una estructura de éste tipo:

-- Encuestas:

ID
Titulo
Descripcion
Fecha_inicio
Hora_inicio
Fecha_fin
Hora_fin
Grupo -> grupo de opciones para la encuesta
Grupo_usuarios -> Grupo de usuarios que pueden votar.


-- Grupos: (contiene los grupos de opciones posibles para las encuestas)

ID_Grupo
Nombre
Descripcion -> Descripción del grupo.


-- Opciones: (Las opciones)

ID_Opcion
Opcion
Comentario -> O descripción sobre esa opción en concreto.


-- Opciones-Grupos (Tabla intermedia para asociar una opción a uno o varios grupos)

ID_Opcion
ID_Grupo



-- Usuarios

ID_Login
Password
Nombre
Apellidos
Mail
Nivel -> Para ver si puede crear o modificar encuestas.


-- Grupo_Usuarios

ID_Grupo
Nombre
Descripcion

-- Usuarios-Grupos (Tala Intermedida para asociar un usuario a uno o varios grupos de usuarios)

ID_Grupo
ID_Usuario


-- Resultados:

ID_Resultado
ID_Encuesta -> La encuesta asociada
ID_Opcion -> Opción elegida
ID_User -> Usuario que ha votado
Comentario -> Comentario (si lo hay)
Fecha -> Fecha del voto
Hora -> Hora del voto


-- Comentarios (Para implementar un sistema básico de comentarios en las encuestas, independiente del comentario que pueda dejar el usuario al votar)

ID_Comentario
ID_Encuesta
ID_User
Fecha
Hora
Comentario



Puede parecer algo enrevesado, pero es un sistema "sencillo" que abarca muchas posibilidades. Por supuesto es altamente mejorable, pero es lo que se me ocurrió en su día. Implementarlo es algo costoso, pero no demasiado complicado. Es muy estándar, para adecuarse a un montón de escenarios posibles y encuestas muy diferentes entre ellas. Si quieres algo más cerrado y personalizado todo es cuestión de plantearlo, analizarlo y diseñarlo.