According to the manual of mysql_query() and to everything I know about this function that I used so many times, it can either return a resource or FALSE if the
For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error.
For other type of SQL statements, INSERT, UPDATE, DELETE, DROP, etc, mysql_query() returns TRUE on success or FALSE on error.
(from http://php.net/manual/en/function.mysql-query.php)
You say that SELECTs are returning boolean true? Not just a resource that isn't zero :) ?