Sua consulta deve ter um problema que está fazendo com que $result seja um recurso inválido.
Tente verificar se há mysql_error() após a linha na qual você executa sua consulta.
Editar:
Na verdade, eu alteraria sua função query() da classe DBConnector para algo como o seguinte, para que um erro identificável seja lançado quando você tiver uma consulta incorreta:
function query($query) {
$this->theQuery = $query;
$queryId = mysql_query($query,$this->link);
if (! $queryId) {
throw new Exception(mysql_error().". Query was:\n\n".$query."\n\nError number: ".mysql_errno();
}
return $queryId;
}