CakePHP удаляет специальные символы из this-›params

Я использую jQuery для передачи данных по следующему URL-адресу в моем приложении cakephp 1.2:

$("#test").load("http://domain.com/controller/action/productID:2001642/questionID:2501322/value:C%2B%2B/questionType:3", function({
  $("#test").fadeOut(3000);
}); 

В контроллере, когда я

debug($this->params['named']);

он возвращается

Array
(
    [productID] => 2001642
    [questionID] => 2501322
    [value] => C  
    [questionType] => 3
)

Часть URL-адреса $this отображает

[url] => Array
                (
                    [url] => deu/productanswers/updateoredit/productID:2001642/questionID:2501322/value:C  /questionType:3
                )

так что где-то вдоль линии C ++ или C% 2B% 2B становится раздавленным.

У кого-нибудь есть решение или обходной путь, пожалуйста?

Привет, Тафф


person Taff    schedule 29.04.2011    source источник


Ответы (1)


Хотя я был бы очень заинтересован в решении cakephp, я прибегнул к использованию $_SERVER['REQUEST_URI']

Определенно не сексуальное решение

$tmp1 = explode('value:',$_SERVER['REQUEST_URI']);
$tmp2 = explode('/',$tmp1[1]); 
$prod=$this->params['named']['productID'];
$ques=$this->params['named']['questionID'];     
$value=urldecode($tmp2[0]);

Надеюсь, это поможет кому-то в будущем...

person Taff    schedule 02.05.2011