Thursday, April 1, 2010

Authentication Issue

Hi,

I'm using cakephp 1.3 and very new to php. I have a basic
Authentication Screen and it works well.

The problem i have is when i login, depending on the roleid of the
user, it should be redirected to different page, which i donno how .

Example

User Table

UserId int pk
username varchar
password varchar
roleid int

Users_Controller

<?php
class UsersController extends AppController
{
var $name = 'Users';
var $components = array('Auth');

function beforeFilter()
{

parent::beforeFilter();
$this->Auth->loginRedirect = array('controller' => 'Users',
'action' => 'index');

}
function index()
{

$this->set('users', $this->User->find('all'));
}

function login()
{
}
function logout()
{
$this->redirect($this->Auth->logout());
}
}


?>


User Model

<?php
class User extends AppModel
{
var $primaryKey = 'UserID';

var $validate = array('username' => array('rule' =>
'notEmpty','message'=> 'Empty'));}
?>


View

<div class="user">
<?php
$session->flash('');
$session->flash('auth'); ?>

<?php echo $form->create('User', array('action' => 'login'));?>
<table width="100%" cellpadding="5" cellspacing="5">
<tr>
<td align="center">
<table width="30%" cellpadding="5" cellspacing="15">
<tr>
<td class="label1">
User Name:
</td>
<td>
<?php echo $form-
>input('username',array('label'=>false));?>
</td>
</tr>
<tr>
<td class="label1">
Password:
</td>
<td class="label1">
<?php echo $form-
>input('password',array('label'=>false));?>
</td>
</tr>
<tr>
<td colspan="2" class="button">
<center><?php echo $form->end('Sign In');?></
center>
</td>
</tr>
</table>
</td>
</tr>
</table>

</div>


Now, if the user role is admin I need to redirect to Events, if Member
redirect to Home........

Also how do I store the authenticated user in the Session. Its not
happening.

Thanks
MDB

Check out the new CakePHP Questions site http://cakeqs.org and help others with their CakePHP related questions.

You received this message because you are subscribed to the Google Groups "CakePHP" group.
To post to this group, send email to cake-php@googlegroups.com
To unsubscribe from this group, send email to
cake-php+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php?hl=en

To unsubscribe, reply using "remove me" as the subject.

No comments: