Cakephp: необходимо urlencode ПОЛУЧИТЬ форму

#php #cakephp

#php #cakephp

Вопрос:

У меня есть следующая форма, которая использует GET для передачи параметров контроллеру:

 <?php echo $form->create('Entity', array('controller'=>'entities', 'name' => 'SearchForm','action'=>'index', 'type'=>'GET')); ?>
        <table class="searchTable">
            <tr>
                <td>
                <?php 
                    $ticker = (isset($this->passedArgs['ticker'])) ? $this->passedArgs['ticker'] : "";
                    echo $this->Form->input('ticker', array("value"=>$ticker));
                ?>  
                </td>
            </tr>
            <tr>
                <td>
                <?php 
                    $name = (isset($this->passedArgs['full_name'])) ? $this->passedArgs['full_name'] : "";
                    echo $this->Form->input('Description', array("value"=>$name));
                ?>  
                </td>

            </tr>
            <tr>
                <td>
                <?php 
                    $country = (isset($this->passedArgs['country'])) ? $this->passedArgs['country'] : "";
                    $country_id = (isset($this->passedArgs['country_id'])) ? $this->passedArgs['country_id'] : "";
                    echo $this->Form->input('country', array("value"=>$country));
                    echo $this->Form->hidden('country_id', array('value'=>$country_id));
                ?>  
                </td>

            </tr>
            <tr>
                <td><?php echo ' Filters enabled:';?></td>
            </tr>
            <tr>
                <td>
                <?php
                    $enable = isset($this->params['named']['enable']) ? $this->params['named']['enable'] : null;
                    echo $form->input('enable', array('label'=>false,'type'=>'checkbox', 'checked'=> (boolean) $enable));
                ?>
                </td>
            </tr>
            <tr>
                <td><?php echo $this->Form->end(__('Refresh List', true)); ?></td>
            </tr>
        </table>
  

Параметры не urlencoded. Какой для меня был бы лучший способ добиться этого? Нужно ли мне использовать javascript, поскольку URL создается браузером?

Я использую версию 1.3.7.

Ответ №1:

В итоге я сделал это POST, и мне не пришлось иметь дело с urlencoding.