Den där "eller"-konstruktionen kan orsaka problem, jag skulle göra något i stil med:
$result = mysql_query($sql);
if (!$result) {
$this->debug->dbErrors($sql);
}
På detta sätt gör du en explicit kontroll för att se om $result är en boolesk falsk (frågan är ogiltig) eller en resurs (frågan är giltig). Poängen är att bara anropa $this->debug->dbErrors()
om det verkligen finns ett problem, annars sättet din kod är skriven på, kommer varje fråga att skickas via e-post.