我已尝试在404错误页面中执行以下操作,以创建引用页面的反向链接,以便我不必依赖javascript。
<?php $this->set('refer', $this->referer()); ?>
<p><?php echo '<a href="'.$refer.'">Back to previous page</a>'; ?></p>
然而它不起作用......任何想法为什么?此代码在/Errors/error404.ctp
答案 0 :(得分:14)
使用请求对象:)
$this->request->referer();
答案 1 :(得分:1)
在CakePHP3中,您可以使用:
<li><?= $this->Html->link(__('Back'), $this->request->referer()) ?></li>
应该没问题。
答案 2 :(得分:0)
尝试将此添加到app控制器的beforeRender方法中:
beforeRender() {
$this->set('refer',$this->referer);
}
它应该适用于所有观点。
答案 3 :(得分:0)
$this->request->referer() 适用于 Cakephp 2.8.0 版的 .ctp 文件
<?php echo $this->Html->link(__d('user', 'Login', true), $this->request->referer(), array('class' => 'login_text')); ?>
答案 4 :(得分:-1)
仅使用 $_SERVER['HTTP_REFERER']
呢?我知道这不是Cakey的做法,但似乎它适用于你的情况。