Работа с кириллицей — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «При передачи в '''usel''' параметра на кириллице, не происходит отработка протокола usel. Чтобы р…»)
 
Строка 19: Строка 19:
  
 
'name' - название параметра в адресной строке, get параметр.
 
'name' - название параметра в адресной строке, get параметр.
 +
[[Категория:Шаблонизаторы]][[Категория:Верстка в XSLT]]

Версия 08:50, 8 сентября 2011

При передачи в usel параметра на кириллице, не происходит отработка протокола usel. Чтобы решить данную проблему, необходимо к передаваемому параметру применить php функцию urlencode. Необходимо в файл classes/modules/custom.php, после слов //TODO: , добавить метод:

public function urlenc($name){
  $param = getRequest($name);
  if($param){
    return urlencode($param);
   }
  }

Метод getRequest принимает название get параметра из адресной строки и возвращает само значение, пропущенное через функцию urlencode. В самом коде необходимо использовать примерно следующий вызов:

<xsl:variable name="name_enc" select="document(concat('udata://custom/urlenc/', 'name'))/udata" />
<xsl:apply-templates select="document(concat('usel://useltempl/', '?name=', $name_enc))"/>

'name' - название параметра в адресной строке, get параметр.