Search

I have an error on creation handle process.

Example with text input field:

Russian word привет turns to п, вфдраа turns to вфд, etc.

Words are cutting at the russian letter р.

thus, in database I have this:

entry_id    value       handle
1           приветыы    п
2           блаблараа   блабла
3           вфдраа      вфд

I’m using symphony 2.0.2. In symphony 2.0 I solved this error by removing some regex and now I can not remember where :)

It seems like these Russian characters are missing in the transliteration array that transforms values to handles. You should check /symphony/lib/lang/lang.en.php and add transliterations for those characters to $transliterations.

However other characters still here. Why?

I’m not sure that it is the reason.

I think normally Symphony should first translate all the specified umlauts (see transliteration) and then delete all glyphs that are not URI conform. Seems like this last step is not working properly with Russian characters - but I have to say that I’m not sure and this is just a guess.

Илья, странно, что handle тоже русский, лично у меня “привет” -> “privet”.

Я обновлялся с 2.0, может поэтому?

Хм, не знаю, но у меня все версии если не делать транслитерацию выдают только “??????”.

Для борьбы с вопросиками помогает при установке симфонии поставить галочку, что-то типа «использовать режим совместимости для базы данных».

У меня проблема только с буквой р и только с маленькой. На данный момент прикрыл баг заменой этой буквы на аналогично выглядящую английскую p, но это плохое решение. Мне нужны русские handle, какие они у меня были до переезда на 2.0.2.

Would it be possible that you give us a small abstract in English what you are talking about :)

I’m sorry =) We are talking about subject. I have troubles only with one russian character—р. I found a temporary solution—replace (in transliteration array) russian р with english р. They look the same, but this is a bad decision.

Problem is in class.lang.php:

line 142: $string = preg_replace('/[<>?@:!-/[-`ëí;‘’]++/', $delim, $string);

I commented this line and it works now!

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details