@M4TT
In /scripts/captcha.inc.php
FIND:
$id = md5(uniqid($user_ip . microtime()));
echo "$id&t=$type";
REPLACE WITH:
$id = md5(uniqid($user_ip . microtime()));
if (!$type) {$type = "{$config['GRAPHICS_LIBRARY']}";}
echo "$id&t=$type";
This should resolve the broken captcha issues for you
NOTES:
Basically, there is a "t" variable expected to be passed through the URL in to the $type string. But its not always passed. When it doesnt get passed, the script just fails to generate any output because there is no graphics library type specified. Reasons for it not being passed? Possibly due to the vars setting on the server is limited, or is configured to only take the first set of vars sent -- rather than head down a rabbit hole for taking a var from one script, and then taking the next one from another script, and then taking the next one from another script --- security stuff. Especially for servers with newer versions of php installed. I'm just taking a wild guess at that conclusion since the vars get passed on some php configurations, but not others.