5

我尝试在我的 404 错误页面中执行以下操作来创建引用页面的反向链接,这样我就不必依赖 javascript。

<?php $this->set('refer', $this->referer()); ?>

<p><?php echo '<a href="'.$refer.'">Back to previous page</a>'; ?></p>

但是它不起作用...任何想法为什么?这段代码是在/Errors/error404.ctp

4

5 回答 5

14

使用请求对象:)

$this->request->referer();
于 2013-09-12T02:12:44.907 回答
2

在 CakePHP3 中,您可以使用:

<li><?= $this->Html->link(__('Back'), $this->request->referer()) ?></li>

应该没问题。

于 2017-06-20T22:57:07.113 回答
0

尝试将此添加到应用控制器的 beforeRender 方法中:

beforeRender() {
    $this->set('refer',$this->referer);
}

那么它应该对所有视图都可用。

于 2012-06-01T16:05:13.980 回答
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')); ?>

于 2021-07-01T06:27:00.507 回答
-1

使用just $_SERVER['HTTP_REFERER']来代替呢?我知道这不是蛋糕的做法,但它似乎适用于你的情况。

于 2012-06-06T17:43:11.803 回答