Open GeeH opened 8 years ago
I have the same problem. I try to debug ZF. I think that problem is here https://github.com/zendframework/zendframework/blob/d8adfe90da23af119ae5732195ad50af0009d672/library/Zend/Escaper/Escaper.php#L256
Function bin2hex('a') (Char "a" is a cyrillic char) returns d0b0 but not 0430 (UTF-8 code for this char).
My test configuration is php 5.3 and php 7.0.
Please, help me.
Hello, I have the same problem. Do you use docker? Are you solved this problem?
Добрый, мы не используем докер, потому что у нас битрикс окружение и нагруженный проект. Решили проблему тем, что установили зенд фреймворк более старой версии 2.2.5, которая кажется корректно работает (давно дело было). Также мы отказались от использования встроенного хелпера для рендеринга input-ов. Не помню уже точно, но у нас было так, что на одной версии php 5.3.x работало, а на другой 5.3.x1 - нет. Кажется, не работало на более новой версии. 5.3
В общем, попробуйте 2.2.5 установить. Если не сложно, напишите, что у вас получилось.
Я использовал контейнер от битрикса не проверил конфигурацию php.ini. Получилось решить проблему установив в php.ini mbstring.func_overload = 0
I used php.ini file from Bitrix where setted mbstring.func_overload = 2 I solved this problem changed mbstring.func_overload = 0
@3ech7oul, @bigbyben Please write in English, otherwise nobody can follow you. Thanks!
Sorry, my english is very bad, but we understod each other. :)
I think, that this bug could be reproduced by setting php.ini mbstring.func_overload = 2. For example, a russian CMS bitrix use this setting for work.
3ech7oul speak, that setting php.ini mbstring.func_overload = 0 is the fix to the problem. But bitrix is not working with this setting. :(
@3ech7oul, thank you
This repository has been closed and moved to laminas/laminas-escaper; a new issue has been opened at https://github.com/laminas/laminas-escaper/issues/6.
This issue has been moved from the
zendframework
repository as part of the bug migration program as outlined here - http://framework.zend.com/blog/2016-04-11-issue-closures.htmlOriginal Issue: https://api.github.com/repos/zendframework/zendframework/issues/7681 User: @mkEmperor Created On: 2016-03-03T15:20:23Z Updated At: 2016-03-07T02:09:36Z Body
$this->add(array( 'name' => 'name', 'attributes' => array( 'type' => 'text', ), 'options' => array( 'label' => 'Имя', ), 'attributes' => array( 'required' => 'required', 'placeholder' => 'Имя' ), ));
$this->add(array( 'name' => 'submit', 'attributes' => array( 'type' => 'submit', 'value' =>
'Зарегестрироваться') ));
in form
<input name="name" required="required" placeholder="킘킼톏" type="text" value="">
<input name="submit" type="submit" value="킗킰톀킵킳킵톁톂톀킸톀킾킲킰톂톌톁톏">
Comment
User: @mkEmperor Created On: 2016-03-03T15:22:46Z Updated At: 2016-03-03T15:22:46Z Body Project and all files in utf-8
Comment
User: @mkEmperor Created On: 2016-03-03T16:10:36Z Updated At: 2016-03-03T16:11:01Z Body
public function escapeHtmlAttr($string) { $string = $this->toUtf8($string); if ($string === '' || ctype_digit($string)) { return $string; } $result = preg_replace_callback('/[^a-z0-9,\.\-_]/iSu', $this->htmlAttrMatcher, $string); return $this->fromUtf8($result); }
correct '/[^a-zа-яА-я0-9,.-_]/iSu'