Foros del Web » Programando para Internet » PHP »

ayuda test

Estas en el tema de ayuda test en el foro de PHP en Foros del Web. Hola amigos. Estoy trabajando con php y Mysql. Estoy haciendo un cuestionario tipo test, osea la estructura seria: pregunta1 --alternativa1 --alternativa 2 --alternativa 3 pregunta2 ...
  #1 (permalink)  
Antiguo 10/09/2008, 07:36
 
Fecha de Ingreso: septiembre-2008
Mensajes: 4
Antigüedad: 15 años, 7 meses
Puntos: 0
Exclamación ayuda test

Hola amigos.

Estoy trabajando con php y Mysql. Estoy haciendo un cuestionario tipo test, osea la estructura seria:

pregunta1
--alternativa1
--alternativa 2
--alternativa 3
pregunta2
...
...

tanto las preguntas como las alternativas las tengo en la Bd en dos tablas distintas, el problema me surge cuando intento poner las alternativas a la pregunta, ya que me imprime todas las alternativas y no se como decir a php que alternativa corresponde a la pregunta. Lo que me ocurre es:

pregunta1
--respuesta a
--respuesta b
--respuesta c
--respuesta a
--respuesta b
--respuesta c
-- ...
y asi hasta terminar con todo el campo que contiene las alternativas. luego imprime:

pregunta 2
-- --respuesta a
--respuesta b
--respuesta c
--respuesta a
-- .....

el codigo es:

$sql =mysql_query("SELECT * FROM preguntas WHERE tema='".$tema."'",$link);
while($row = mysql_fetch_array($sql)){
$pregunta=$row[pregunta];
echo $pregunta;
$sql2=mysql_query("select * from alternativas WHERE tema='".$tema."'",$link);
while ($resp = mysql_fetch_array($sql2)){
echo "<br><br>------<br><br><br>".$resp[alternativa]."<br><br>" ;
}
}

gracias
  #2 (permalink)  
Antiguo 10/09/2008, 07:39
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 2 meses
Puntos: 7
Respuesta: ayuda test

No te he entendido bien, pero si lo que quieres es mostrar solo 3 alternativas, es decir, a, b y c, usa LIMIT 3 o LIMIT 0,3
  #3 (permalink)  
Antiguo 10/09/2008, 07:40
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 2 meses
Puntos: 7
Respuesta: ayuda test

Uppps. Perdonen, pero se ha recargado la página y se ha reenviado la respuesta.

Última edición por yonolose; 10/09/2008 a las 07:41 Razón: Repetición de respuesta
  #4 (permalink)  
Antiguo 10/09/2008, 07:47
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: ayuda test

Si estas extrayendo de la DB, deberias colocar un campo a la tabla que te indique de que pregunta es la respuesta, por ejemplo, un campo llamado pregunta que sea entero y que tenga el numero de la pregunta, asi podras seleccionar solo las que sean de cada pregunta.

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #5 (permalink)  
Antiguo 10/09/2008, 07:57
 
Fecha de Ingreso: septiembre-2008
Mensajes: 4
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: ayuda test

Hola amigos

en la BD tengo 4 campos:
id
alternativa(es donde estan las alternativas)
tema (el tema al que corresponden las preguntas es un entero)
Nalternativa(es un entero que relaciona pregunta con sus alternativas.)

Es decir:

el tema 1
pregunta 1
alternativas 1, 1, 1

el tema 1
pregunta 2
alternativas 2, 2, 2

asi el tema 1 pregunta 1 y alternativas 1, 1, 1
asi el tema 1 pregunta 2 y alternativas 2,2,2

lo que no consigo es generar para cada pregunta el 1,1,1 o el 2,2,2 etc..
Esta estructura me la he inventado yo y no se si es la mejor, si alguien sabe como hacerlo de otra forma que lo comente.
  #6 (permalink)  
Antiguo 10/09/2008, 08:03
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: ayuda test

No he entendido el esquema! :(
Pense en este:

tblPregunta: id, tema, pregunta
tblAlternativas: id, alternativa, IdPregunta

No se si se adecue a tus necesidades, asi podras hacer un select de tblAlternativas donde el IdPregunta sea igual al id de la pregunta que estas imprimiendo

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #7 (permalink)  
Antiguo 10/09/2008, 08:13
 
Fecha de Ingreso: septiembre-2008
Mensajes: 4
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: ayuda test

voy a intentar explicarme:

todo se basa en tres elementos:

Tema del test, puede ser 1, 2, 3,4...tema.
Las preguntas del tema que pueden ser 1,2,3.... preguntas.
las alternativas a la pregunta que sera por ejemplo si corresponde al tema 1 pregunta 1 le corresponde las alternativas 1,1,1

lo que no consigo es generar la estructura tipo test de antes.
  #8 (permalink)  
Antiguo 10/09/2008, 08:17
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: ayuda test

Si siempre son 3 alternativas, entonces buscas las alternativas con el mismo numero de la pregunta y las limitas a 3 por pregunta.
Osea usando el LIMIT en el select.

Saludos, espero haberte ayudado!
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #9 (permalink)  
Antiguo 10/09/2008, 08:18
 
Fecha de Ingreso: septiembre-2008
Mensajes: 4
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: ayuda test

perdon se me olvido poner una cosa:

la combinacion por ejemplo de 1,1,1,1,1 corresponde a:

tema 1 dentro de este tema la pregunta primera y dentro de esta sus alternativas (1,1,1).

gracias compañeros espero no dar mucho la lata
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 01:10.