在cakephp中将url从当前页面传递给控制器

在cakephp中将url从当前页面传递给控制器,php,cakephp,cakephp-2.0,Php,Cakephp,Cakephp 2.0,我试图将url从当前页面传递给控制器,但它没有显示完整的url 例如,http://xxxxxx.localhost/cards/card_list/page:2当我在控制器中回显它时,它会显示xxxxxx.localhost。我知道是因为特殊的字符,比如(“/”:”)…等等 我的项目目的是在controller完成工作后,将url和表单一起传递给controller,我会将其重定向到当前页面 卡片列表(视图) 试试下面的方法 $this->request->url 上面应该包含U

我试图将url从当前页面传递给控制器,但它没有显示完整的url

例如,
http://xxxxxx.localhost/cards/card_list/page:2
当我在控制器中回显它时,它会显示
xxxxxx.localhost
。我知道是因为特殊的字符,比如
(“/”:”)
…等等

我的项目目的是在controller完成工作后,将url和表单一起传递给controller,我会将其重定向到当前页面

卡片列表(视图)


试试下面的方法

$this->request->url

上面应该包含URL作为当前视图请求的一部分

试试下面的方法

$this->request->url
上面应该包含URL作为当前视图请求的一部分

使用贪婪的星型路线 通常,正斜杠表示参数分隔符:

即url
/controller/action/one/two/three/four
映射到以下变量:

function action ($one, $two, $three, $four) {
}
如果希望
$one
包含动作名称后面的所有内容(在上例中),可以使用路由:

还是让生活变得简单 不必在url中添加url,只需将其设置为表单字段即可:

<?php 
echo $form->create('CardSaleAll', array(
    'action' => 'complete_sale_card'
));
echo $form->input('redirect', array(
    'type'=> 'hidden',
    'value' => $url5
));
?>
或类似的

不要使用相对URL 在这个问题上,还有一个问题:

'src'=>'../../img/btn_52.png','style'=>'宽度:307px;'

这也是个坏主意

这将适用于url
http://xxxxxx.localhost/cards/card_list/
(我假设)并且url
http://xxxxxx.localhost/cards/card_list
(无尾随斜杠)

相反:

  • 在适当的地方使用css——这是一个适当的例子
  • 如果您确实想在源代码中添加url,请使用
    Router::url()
    生成正确的绝对url
  • 使用贪婪的星型路线 通常,正斜杠表示参数分隔符:

    即url
    /controller/action/one/two/three/four
    映射到以下变量:

    function action ($one, $two, $three, $four) {
    }
    
    如果希望
    $one
    包含动作名称后面的所有内容(在上例中),可以使用路由:

    还是让生活变得简单 不必在url中添加url,只需将其设置为表单字段即可:

    <?php 
    echo $form->create('CardSaleAll', array(
        'action' => 'complete_sale_card'
    ));
    echo $form->input('redirect', array(
        'type'=> 'hidden',
        'value' => $url5
    ));
    ?>
    
    或类似的

    不要使用相对URL 在这个问题上,还有一个问题:

    'src'=>'../../img/btn_52.png','style'=>'宽度:307px;'

    这也是个坏主意

    这将适用于url
    http://xxxxxx.localhost/cards/card_list/
    (我假设)并且url
    http://xxxxxx.localhost/cards/card_list
    (无尾随斜杠)

    相反:

  • 在适当的地方使用css——这是一个适当的例子
  • 如果您确实想在源代码中添加url,请使用
    Router::url()
    生成正确的绝对url

  • 是的,首先回显,因为我想查看字符串是否正确。请尝试回显$this->request,查看url是否在其中?“无需显示”没有任何意义-请求url不可能为空。您是否将
    echo$this->request->url
    放入您的
    complete\u sale\u card
    操作中?$\u服务器['request\u URI']可能会help@AccessDenied在
    视图
    中一切正常,但在控制器中一切都不好。是的,请先回显,因为我想查看字符串是否正确。请尝试回显$this->请求,并查看url是否在其中?“无需显示”没有任何意义-请求url不可能为空。您是否将
    echo$this->request->url
    放在
    complete\u-sale\u-card
    操作中?$\u-SERVER['request\u-URI']可以help@AccessDenied在
    视图
    中一切正常,但在控制器中一切都不好。这有帮助吗?这有帮助吗?
    <input type="hidden" name="data[CardSaleAll][sale_card_id]" value="'+id+'"> 
    
    echo $this->Form->input('sale_card_id', array('type' => 'hidden'));