Hi, I am trying to setup an Edit User authentication action. I have authentication working fine for adding a user but when i try to edit a user i am running into a problem.
If i try to edit a user when all information supplied passes validation it works fine (URL: http://localhost/users/edit/3). If however i leave a textfield blank when i am validating it against 'notEmpty' the first time i hit the form submit button it works as expected and reloads the edit user page with the validation error displayed (URL: http://localhost/users/edit/3). If i do nothing and try to submit the form again with the blank textfield i now get redirected to http://localhost/users/edit with an Invalid User message "*Error: * The requested address *'/users/edit'* was not found on this server." <!-- app/Controller/UsersController.php --> public function edit($id = null) { $this->User->id = $id; if (!$this->User->exists()) { throw new NotFoundException(__('Invalid user')); } if ($this->request->is('post') || $this->request->is('put')) { if ($this->User->save($this->request->data)) { $this->Session->setFlash(__('The user has been saved')); $this->redirect(array('action' => 'index')); } else { $this->Session->setFlash(__('The user could not be saved. Please, try again.')); } } else { $this->request->data = $this->User->read(null, $id); } } <!-- view/users/edit.ctp --> <div class="users form"> <?php echo $this->Form->create('User', array('action' => 'edit'));?> <fieldset> <legend><?php echo __('Edit User'); ?></legend> <?php echo $this->Session->flash(); echo $this->Form->input('firstname', array('label' => 'First Name')); echo $this->Form->input('secondname', array('label' => 'Second Name')); echo $this->Form->input('address_01', array('label' => 'Address Line 1')); echo $this->Form->input('address_02', array('label' => 'Address Line 2')); echo $this->Form->input('address_03', array('label' => 'Address Line 3')); echo $this->Form->input('address_04', array('label' => 'Address Line 4')); echo $this->Form->input('tel_01', array('label' => 'Telephone')); echo $this->Form->input('email'); echo $this->Form->hidden('role', array('value' => 'customer')); ?> </fieldset> <?php echo $this->Form->end(__('Submit'));?> </div> <div class="actions"> <h5><?php echo __('Actions'); ?></h5> <ul> <li><?php echo $this->Html->link(__('List Users'), array('action' => 'index'));?></li> </ul> </div> Does anyone know why i am getting redirected on the second submit? Thanks! -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php