Ver Mensaje Individual
  #6 (permalink)  
Antiguo 20/08/2010, 09:02
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: otra de renumerar campos

Se estan mezclando dos dos conceptos distintos: Una cosa es lo que el usuario ve, y otra diferente es lo que el sistema administra.
Para el caso, el usuario verá las preguntas numeradas en un orden incremental. Eso es irrelevante y sólo sirve para referencia en el momento en que el usuario interactúa.
En tanto el usuario esté interactuando en la página, el formulario conservará en memoria la tabla donde se encuentran tanto los Id dinámicos, como los id reales que deben ser invisibles al usuario, de este modo, si el usuario resuelve la pregunta, la respuesta se obtiene en las siguientes capas usando la misma tabla, la cual contiene el par de Ids. De ese modo la respuesta correcta se obtiene de la base no usando el Id dinámico sino el real.
¿Se entiende?
El otro ID, el real de la tabla, sólo debe ser accesible a quien administra los datos.

Este modelo, en el que coexisten ambos ID, aunque uno de ellos sólo exista en el formulario activo, es el modelo que usa, por ejemplo, Oracle para sus exámenes On-Line (lo sé porque estuve cursando los Niveles I y II re Oracle 11g recientemente). Si cargabas dos veces consecutivas el formulario del mismo examen, el orden de las opciones de las preguntas cambiaba, aunque no cambiase el orden de las preguntas en sí.
El uso que se les da, además de facilitar la creación de examenes dinámicos, es precisamente asegurarse que no hubiese dos exámenes iguales.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)