vamos a hacer varias pruebas.
quita toda la parte del where de las 3 consultas. que quede asi:
Código sql:
Ver originalSELECT IF((SELECT COUNT(*) FROM jugadores)=0,IF((SELECT COUNT(*) FROM arbitros)=0,IF
((SELECT COUNT(*) FROM directivos)<>0,'directivo','Email o contraseña incorrectos'),'arbitro'),'jugador') AS persona;
Pruebalo con el count de otras tablas en tu bd de las cuales sepas el numero de registros.
Cuentanos como te va.
Dude y no creo que tenga que ver la version de mysql. Para la versión 3.23 ay soportaba if