Быстрое решение для изменения кодировки соединения (и я считаю, что это ваша проблема) - открыть соединение, а затем выполнить exec запрос 'set names utf8;'. Если вы используете версию php больше 5, то вместо выполнения запроса вы можете использовать mysql_set_charset ('utf8'). Это предпочтительный способ.
Но, пожалуйста, обратите внимание, что этот запрос должен выполняться каждый раз, когда вы открываете соединение, чтобы он увеличил количество ваших запросов mysql.
<?php
$mysql = mysql_connect('localhost','user1','pass1');
mysql_set_charset('utf8');
....
?>