No sé porqué haces dos "query" .. En SQL existen los operadores lógicos como AND .. OR .. etc .. para hacer consultas tipo:
$query=mysql_query("SELECT * FROM foro_phpbb_users where username='$login' AND user_email='$mail'");
Y si añades COUNT() para contar desde SQL el total de registros que te pueda arrojar esa consulta .. en una sóla sentencia SQL tendrías si existe ese registro (usuario) con ese username y ese user_email en tu tabla del foro_phpbb_users ...
Código PHP:
$sql=mysql_query("SELECT COUNT(*) FROM foro_phpbb_users where username='$login' AND user_email='$mail'");
$consulta=mysql_query($sql) or die (mysql_error());
$total=mysql_result($consulta,0);
if ($total == 0){
// Si no coincide usuario y passwor (registros ==0) .. redireccionas ..
header("location: ../?centro=pruebas/registro.php");
exit; // Importante terminar el script si redireccionas ..
} else {
// Lo que corresponda ...
}
El resto .. en el "else" parece que revisarías al usuario/passwor en formato MD5() esta última .. SI es así . haz otra consulta (query) tipo:
$sql=mysql_query("SELECT * FROM foro_phpbb_users where username='$login' AND pass=MD5('$pass')");
Como veras .. uso la función MD5() directamente sobre SQL (que Mysql también tiene esa función ...
Y .. recuerda .. si el objetivo de esto es simplemente validar al usuario . con que cuentes los registros que arrojaría la consulta sobra y es más optimo para "validar" .. Si requieres de esos datos a su vez ahí ya necesitas hacer tu mysql_fetch_array() o lo que corresponda para obtener esos valores del "recordset" que has obtenido (y sin usar count() ..).
Un saludo,