Prova a chiamare mysql_set_charset('utf8');
dopo la connessione al database. Penso che sia simile all'esecuzione di una query SET NAMES, ma poiché il manuale PHP dice che si consiglia di utilizzare quella funzione su una query SET NAMES, lo proverei.
Inoltre, quando visualizzi i tuoi contenuti, puoi provare echo htmlentities($string, ENT_COMPAT, 'UTF-8');