bueno creo que he solucionado el problema, lo que hice fue suponer que cuando una consulta SELECT fallaba, php retornaba FALSE al igual que cuando se hace un INSERT, UPDATE...
les dejo la documentacion
http://www.php.net/manual/es/mysqli.query.php
Valores devueltos ¶
Retorna FALSE si hay fallas. Si una consulta del tipo SELECT, SHOW, DESCRIBE o EXPLAIN es exitosa la funcion mysqli_query() retornara El objeto de la clase mysqli_result. Para otras consultas mysqli_query() retornara TRUE si tiene exito.
Gracias, esta vez me solucione la duda yo mismo pero ustedes siempre me han ayudado demasiado, espero que esto le sirva a alguien.