Have Recent Problem with Gradebook Display? PDF Print E-mail
User Rating: / 0
PoorBest 
Written by Ken Task   
Tuesday, 24 January 2012 12:10
AddThis Social Bookmark Button

Recent upgrades to php for taking care of the denial of service exploit have now included a PHP directive for max_input_vars.
Without setting in php.ini, it defaults to 1000 which won't render the gradebook as before.

Uhhh, do hope php has been upgraded or your site could suffer a denial of service fate! :(

This could result in an issue with Moodle gradebook where there are more than x users to display in the grade book.
See:
http://moodle.org/mod/forum/discuss.php?d=184102#p846640

To find out if that's the issue, do as a poster suggest and search the error logs:

On a CentOS box as root user:
fgrep max_input_vars /var/log/httpd/error_log

If you have the issue something like this will be found:

[Mon Jan 23 16:25:18 2012] [error] [client x.x.x.x] PHP Warning:  Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini. in Unknown on line 0, referer: http://site/moodle/grade/report/grader/index.php?plugin=grader&id=99&sesskey=PqQGn8IIuL&edit=1

The fix:  edit /etc/php.ini and include the setting:

; added 2012-01 gradebook issue
max_input_vars = [something above 1000]

the ; line above is a comment - good idea to add comments of your own when changing ini for php.

Must restart apache: /sbin/service httpd restart

Check your php info in Moodle and you should see the new settings for the variable.

or while you are at the command line already:

php -i |grep max_input_vars

should show:
max_input_vars => 5000 => 5000

 

Last Updated on Tuesday, 24 January 2012 16:02
 
 
Total Views: 486