La tua query deve avere un problema che causa $result come risorsa non valida.
Prova a controllare mysql_error() dopo la riga su cui esegui la query.
Modifica:
In effetti, modificherei la tua funzione di classe DBConnector query() in qualcosa di simile al seguente, in modo che venga generato un errore identificabile quando hai una query errata:
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;
}