Então, sua função tem uma condição a mais ( if ($this->request->is('post')) {), o que essa linha faz??? Pois no meu caso não se trata de um blog, e eu não tenho um "post".
Em sexta-feira, 19 de abril de 2013 17h25min19s UTC-3, Anderson Moraes escreveu:
Boa tarde pessoal.--
Eu estou começando agora no CakePHP e estou fazendo uma área restrita, o que tá acontecendo é o seguinte, quando eu entro em uma página onde é necessário estar logado, eu sou direcionado para tela de login e é exibido a seguinte mensagem "Área Restrita", mas o problema é que junto está aparecendo a mensagem "Usuário ou senha inválidos", sendo que essa mensagem deveria aparecer somente após a autenticação.
Se eu entrar direto na tela de login ele me exibe somente a mensagem "Usuário ou senha inválidos", neste caso não deveria aparecer senha nenhuma.
Alguém aqui já passou por isso e pode me ajudar???
Seguem meu códigos:
AppController.php
<?php
App::uses('Controller', 'Controller');
class AppController extends Controller {
public $components = array(
//KitDebug
'DebugKit.Toolbar',
'Auth',
'Email',
'Session',
);
public $helpers = array('Html', 'Form', 'Session');
public function beforeFilter()
{
$this->Auth->allow('display');
$this->Auth->authError = 'Área restrita, efetue o login de acesso.';
$this->Auth->loginError = 'Usuário ou senha inválidos.';
}
}
User.php
<?php
App::uses('AuthComponent', 'Controller/Component');
class User extends AppModel {
public $name = 'User';
public function beforeSave($options = array()) {
if (!empty($this->data['User']['password'])) {
$this->data['User']['password'] = AuthComponent::password($this- >data['User']['password']);
}
return true;
}
}
?>
UsersController.php
<?php
class UsersController extends AppController {
public $name = 'Users';
public function beforeFilter() {
parent::beforeFilter();
}
public function login(){
if($this->Auth->login()){
$this->redirect($this->Auth->redirect());
}else{
$this->Session->setFlash(__('Usuário ou senha inválidos.'));
}
}
public function logout(){
$this->redirect($this->Auth->logout());
}
public function index(){
}
public function getUsers(){
$users = $this->User->find('list', array('fields' => array('id')));
$this->set(compact('$users'));
}
}
?>
login.ctp
<h2><?php echo __('Login'); ?></h2>
<?php echo $this->Session->flash('auth'); ?>
<?php echo $this->Form->create('User');?>
<fieldset>
<?php
echo $this->Form->input('username');
echo $this->Form->input('password');
?>
</fieldset>
<?php echo $this->Form->end('Entrar');?>
Desde já muito obrigado!!!
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
No comments:
Post a Comment