0

我有这个奇怪的困境。我似乎无法从我的登录页面重定向。$this->redirect从其他方法工作正常,但不仅仅是从这个方法。我尝试为它制作一个虚拟方法,我尝试删除所有 eof 文件空格,甚至尝试清空缓存。相同的代码在 localhost 上似乎可以正常工作,但是一旦我将其复制到服务器,它就开始对我发疯。我的控制器代码是

if ($this->request->is('post'))
{
    $user = $this->User->find('first', array('conditions' => array('username' => $this->request->data['username'])));
    if($user['User']['passwd'] == AuthComponent::password($this->request->data['password']))
    {           
         $this->redirect('http://www.google.com.au/');
    }
    else
    {
        echo "Wrong Password";              
    }
}

我正在使用我的自定义登录作为身份验证组件,似乎与我相处得并不融洽。

应用控制器:

public $components = array(
    'Session',
    'Auth' => array(
        'loginRedirect' =>array('controller' => 'dashboards', 'action' => 'index'),
        'logoutRedirect' => array('controller' => 'users', 'action' => 'login')
    )
);

看法:

<form name="loginform" id="loginform" method="post" class="">
    <p>
        <label for="username">Username<br />
            <input type="text" name="username" id="username" class="input" value="" size="20" />
        </label>
    </p>
    <p>
        <label for="password">Password<br />
            <input type="password" name="password" id="password" class="input" value="" size="20" />
        </label>
    </p>
    <p class="submit">
        <input type="submit" name="Submit" id="Submit" class="button button-primary button-large" value="Log In" />
    </p>
</form>

'

4

2 回答 2

0

尝试这个

You can set $this->Auth->loginRedirect

或者这个在AppControler.php

$this->Auth->loginRedirect = array('controller' => 'posts', 'action' => 'index');
于 2013-01-24T02:00:18.390 回答
0

试试这个,希望它会工作。:-)

'Auth' => array(
          'loginRedirect' => array('controller' => 'posts', 'action' => 'index'),
        'logoutRedirect' => array('controller' => 'pages', 'action' => 'display', 'home'),
于 2013-01-24T05:24:00.140 回答