无法获取网址参数

时间:2015-08-18 03:35:44

标签: javascript php jquery ajax phalcon

我使用了一个参数月的ajax url,我从选项框中选择了

  $.ajax({
    url: baseUri + 'attendancelist/search/attsearch/month/' + month ,
    type: 'GET'
    ...
        });

所以我想在 attsearchAction()中调用该参数 所以我这样编码

public function attsearchAction() {        
    $month = $this->request->get('month');  //current testing framework is phalcon
    //$month = $this->_request->getParam('month'); //zend framework is ok by getParam
    var_dump($month);exit;     //null
   }

但它只显示null?如何修复>>

2 个答案:

答案 0 :(得分:3)

您正在将Phalcon网址参数attendancelist/search/attsearch/month/[monthValue]与GET参数(?month=[monthValue])混合。

在Phalcon中你必须设置你的路由器才能知道url的哪一部分是参数。

$router->add(
    "attendancelist/search/:action/month/{month}",
    array(
        "controller" => [your controller],
        "action"     => 1
    )
);

(有关详细信息,请参阅the Phalcon Router docs

然后在您的操作中,您必须从调度程序获取参数。

public function attsearchAction() {
    $month = $this->dispatch->getParam('month');
    var_dump($month);exit;
   }

public function attsearchAction($month) {
    var_dump($month);exit;
   }

答案 1 :(得分:2)

如果要使用url传递参数,则应使用?传递参数

url: baseUri + 'attendancelist/search/attsearch/?month=' + month

或者,当您使用ajax时,您可以使用ajax发送数据。

$.ajax({
    url: baseUri + 'attendancelist/search/attsearch/',
    type: 'GET',
    data: {month: month},
    ...
});