When I insert some data with Zend_Form to database with non a-z characters like chrząszcz it cuts me this string and in database I have saved only chrz.
Everyting in MySql is set as utf8_general_ci, when connecting with MySql I call SET CHARACTER SET 'utf8', files are also UTF-8.
I have no idea what to do with that.
I wrote also standalone script and it inserts and reads me that string correct. ZendFramework reads it also correct. The problem is only with inserting.
Do anyone know how to fix it ?
UPDATE:
If I insert data with:
$db->query("INSERT INTO unit SET name = 'chrząszcz'");
in ZendFramework it works. Problem is with inserting that way:
$unitTable = new Model_Unit_Table();
$unit = $unitTable->createRow();
$unit->setFromArray($form->getValues());
$unit->save();
UPDATE 2:
Problem is with using Zend_Filter_StringToLower – it modifies string chrząszcz into chrz�szcz.
How to get this filterto work correct ?
Responding to your comment:
Does this work?
If yes, your problem may be more Zend_Form related.
Edit:
Your filter needs to use mb_strtolower() instead of strtolower().
Edit2:
Try this: