Работа с кириллицей — различия между версиями
Материал из Umicms
Cmac (обсуждение | вклад) |
Mad grant (обсуждение | вклад) |
||
Строка 19: | Строка 19: | ||
'name' - название параметра в адресной строке, get параметр. | 'name' - название параметра в адресной строке, get параметр. | ||
− | [[Категория: | + | [[Категория:Написание кастомных макросов]][[Категория:Верстка в XSLT]] |
Текущая версия на 20:32, 4 июня 2013
При передачи в 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 параметр.