Moodle 2.0 External DB enrolment causes login blank screen

Moodle 2.0 External DB enrolment causes login blank screen

by Wes Matchett -
Number of replies: 6

When I enable external DB enrolment users get a blank white page at login.  There are no errors in the error log or on the screen.  The front page will display if the URL is updated to .../moodle, and the user is fully logged in.  As soon as the extrn. enrole is disabled the loginis fine.

I turned on full debugging but still get no error messages.

Any help/ideas are very appreciated.

Running Moodle 2.0.3

Average of ratings: -
In reply to Wes Matchett

Re: Moodle 2.0 External DB enrolment causes login blank screen

by Iñaki Arenaza -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
If you get a blank white page, then PHP is probably crashing before it can output the error messages. Have a look at http://docs.moodle.org/20/en/Installation_FAQ#Why_is_a_particular_page_blank_or_incomplete.3F to be able to diagnose the problem.

I'd set the debugging level to 'DEVELOPER' and display the messages on screen (even if it breaks redirection and CSS temporarily)

Saludos.
Iñaki.
In reply to Iñaki Arenaza

Re: Moodle 2.0 External DB enrolment causes login blank screen

by Wes Matchett -

DEVELOPER level debugging and 'Display debug messages' turned on still only shows a blank white screen.  There are no messages displayed on the screen or in the web server log.

In reply to Wes Matchett

Re: Moodle 2.0 External DB enrolment causes login blank screen

by Wes Matchett -

Does anyone have a suggestion on debugging this problem?  I need to solve it.  At a minium I'd like to know where the core code initiates the external enrolement so I can put some error_log() statements before and after to check where it is failing.

In reply to Wes Matchett

Re: Moodle 2.0 External DB enrolment causes login blank screen

by Iñaki Arenaza -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

If you get a completely blank page, I suspect adding error_log statements is not going to buy you anything smile This is because PHP is probably bombing out in the syntax parsing of the problematic code, so it won't have a change to execute the error_log statements.

Can you try adding this statement to your config.php:

ini_set('display_startup_errors', 1);

and see if you get any error messages at all?

Saludos. Iñaki.

In reply to Iñaki Arenaza

Re: Moodle 2.0 External DB enrolment causes login blank screen

by Wes Matchett -

I added the statement to config.php, restarted apache, and still get a blank white screen and the error log is still void of error messages.

Error log statements will tell me exactly where the failure is occurring, if properly placed, which is why I asked where the database enrolement process is initiated.  By moving error_log()s thru the process flow they can pinpoint the last statement processed and report state information at that point.

My only other choice is to use a debugger to trace the problem - but I strongly resist this on a production system and am only going there as a last resort.

In reply to Wes Matchett

Re: Moodle 2.0 External DB enrolment causes login blank screen

by Iñaki Arenaza -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

I added the statement to config.php, restarted apache, and still get a blank white screen and the error log is still void of error messages.

This is really strange, but that's the way it is.

The enrolment process is started in check_enrolment_plugins() in lib/accesslib.php (1.9), and enrol_check_plugins() in lib/enrollib.php (2.x)

This is where Moodle checks what enrolment plugins are enabled and ask each of them to update their enrolment information.

Saludos. Iñaki.