Project

General

Profile

Actions

Bug #8229

closed

Error en ejercicios con preguntas aleatorias

Added by Laura Guirao over 7 years ago. Updated over 7 years ago.

Status:
Bug resolved
Priority:
Normal
Assignee:
Category:
Exercises
Target version:
Start date:
09/05/2016
Due date:
% Done:

100%

Estimated time:
Complexity:
Normal
SCRUM pts - complexity:
?

Description

Hola,

Al actualizar a la versión 1.9.10.4, hemos observado un error en los ejercicios configurados con preguntas aleatorias.
En lugar de aparecer las x preguntas indicadas en la configuración en el apartado de preguntas aleatorias, aparecen todas las que hay añadidas en el ejercicio.
Ejemplo: si tenemos un ejercicio con 30 preguntas y en la configuración ponemos que se muestren 10 aleatorias, se muestran las 30.
Lo he verificado en instalaciones nuestras
En 1.9.chamilo.org devuelve un error de php, directamente, y solo muestra una pregunta:

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /var/www/1.9.chamilo.org/www/main/inc/lib/database.lib.php on line 522 Call Stack: 0.0033 547168 1. {main}() /var/www/1.9.chamilo.org/www/main/exercice/exercise_submit.php:0 0.3497 27710304 2. Exercise->show_button() /var/www/1.9.chamilo.org/www/main/exercice/exercise_submit.php:1147 0.3497 27711024 3. Exercise->get_count_question_list() /var/www/1.9.chamilo.org/www/main/exercice/exercise.class.php:2847 0.3497 27711120 4. Exercise->get_question_list() /var/www/1.9.chamilo.org/www/main/exercice/exercise.class.php:5786 0.3497 27711168 5. Exercise->get_validated_question_list() /var/www/1.9.chamilo.org/www/main/exercice/exercise.class.php:5620 0.3497 27711352 6. Exercise->selectRandomList() /var/www/1.9.chamilo.org/www/main/exercice/exercise.class.php:5569 0.3500 27712392 7. Database::fetch_object() /var/www/1.9.chamilo.org/www/main/exercice/exercise.class.php:1316 0.3500 27712536 8. mysql_fetch_object() /var/www/1.9.chamilo.org/www/main/inc/lib/database.lib.php:522

Si activo el modo desarrollo en una demo nuestra obtengo un error de MySQL:

DATABASE ERROR #1054:
 Unknown column 'q.iid' in 'on clause'
QUERY       :
 SELECT e.question_id
                FROM `chamilo19demo`.`c_quiz_rel_question` e INNER JOIN `chamilo19demo`.`c_quiz_question` q
                    ON (e.question_id= q.iid)
                WHERE e.c_id = 3 AND e.exercice_id    = '6'
                ORDER BY RAND()
                LIMIT 10 
FILE        :
 /.../web/htdocs/main/exercice/exercise.class.php
LINE        :
 1314
CLASS       :
 Exercise
METHOD      :
 selectRandomList

Actions #1

Updated by Yannick Warnier over 7 years ago

  • Status changed from New to Assigned
  • Assignee set to Angel Quiroz
  • Target version set to 1.10.6
Actions #2

Updated by Angel Quiroz over 7 years ago

  • Status changed from Assigned to Needs testing
  • Assignee deleted (Angel Quiroz)
  • % Done changed from 0 to 80

Corregido en bea1e20 y 0338b8a para 1.9.x, 1.10.x, 1.11.x y master

Actions #3

Updated by Laura Guirao over 7 years ago

Comprobado en 1.9.10.4 y en 1.10.4, funciona correctamente

Actions #4

Updated by Yannick Warnier over 7 years ago

  • Status changed from Needs testing to Bug resolved
  • Assignee set to Angel Quiroz
  • % Done changed from 80 to 100
Actions

Also available in: Atom PDF