0

我是 CakePHP 的新手;
在我点击每个菜单后,URL地址栏总是被附加;

我已经定义了我的路线如下:

Router::connect('/brand/*', array('controller' => 'phones', 'action' => 'phonebybrand'));

这是我的菜单:

<?php            
        foreach ($phonebrands as $phonebrand):
            echo '<li><a href="brand/{$phonebrand['Phonebrand']['id']}">{$phonebrand['Phonebrand']['brandname']}</a></li>';
        endforeach;
?>

我试图点击我的菜单几次;我发现总是附加的 URL;
第一次:localhost/cakephp-2.3.2/brand/43
第二次:localhost/cakephp-2.3.2/brand/brand/43
第三次:localhost/cakephp-2.3.2/brand/brand/brand/43

请帮助我,为什么它总是附加网址?

感谢。

4

3 回答 3

1

您可能没有正确获取基本网址。

在你看来试试这个

<?php            
    foreach ($phonebrands as $phonebrand) {
        echo '<li><a href="'.$this->Html->url('/', true).'brand/{$phonebrand['Phonebrand']['id']}">    {$phonebrand['Phonebrand']['brandname']}</a></li>';
    }
?>

否则替换$this->Html->url()Router::url('/', true);.
这篇文章可能会有所帮助。

于 2013-05-03T15:46:05.087 回答
0

当您将菜单代码替换为:

<?php            
        foreach ($phonebrands as $phonebrand):
            echo '<li><a href="/brand/{$phonebrand['Phonebrand']['id']}">{$phonebrand['Phonebrand']['brandname']}</a></li>';
        endforeach;
?>
于 2013-05-03T15:48:20.013 回答
0

您可能正在添加“cakephp-2.3.2/brand/43”而不是“/cakephp-2.3.2/brand/43”

于 2013-05-03T15:06:45.197 回答