I am having a problem with Portugese language on this site. On some pages the characters display fine, like here: http://www.universodosdominios.com/index.php (category menu down left).
Placing those kinds of characters into a page isn’t ASCII compliant, you will need to replace the symbols with HTML symbol codes for them to render correctly.
My wild guess is that in second page when extracting categories from DB, you have not executed “SET names UTF8”., because if I forcibly change encoding in browser to ISO-8859-1, then diacritical characters seem to appear.