Sometimes it's the rule before that actually causes the error.
require '../forums/includes/functions.php';
I assume you use functions.php to use this: phpbb_check_hash(); ?
If it doesn't load functions.php it will stop completely because you are using require and won't show any echo's of like incorrect password because even if $check were to be false the script stops. You can try and put ../before your path, and you can try to use include to see if it makes a difference.
From W3Schools:
Include and require are identical, except upon failure
- require will produce a fatal error (E_COMPILE_ERROR) and stop the script
- include will only produce a warning (E_WARNING) and the script will continue
Cheers