It doesn't look like phpMyAdmin problem. When you code in plain PHP
everything is fine. I just tried the following test:
class IndexController extends Zend_Controller_Action
{
public function indexAction()
{
$db = Zend_Db::factory('Pdo_Mysql', array(
'host' => '127.0.0.1',
'username' => 'root',
'password' => '',
'dbname' => 'daemonnotes'
));
$db->query("SET NAMES 'utf8'");
$db->query('SET CHARACTER SET utf8');
$db->query("INSERT INTO v2_translations(en_US, ru_RU) "
."VALUES ('TEST', 'ТЕСТ')");
$table = new Zend_Db_Table();
$table->setDefaultAdapter($db);
$table->setOptions(array(Zend_Db_Table_Abstract::NAME =>
'v2_translations'));
$data = array(
'en_US' => 'TEST',
'ru_RU' => 'ТЕСТ'
);
$table->insert($data);
}
}
The first insert is OK, the second is not:
id en_US ru_RU
91 TEST ТЕСТ
92 TEST ТЕСТ
Here is the table:
CREATE TABLE IF NOT EXISTS `v2_translations` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`en_US` text COLLATE utf8_unicode_ci NOT NULL,
`ru_RU` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;