Aqui tem um exemplo de registro usando cakephp 1.2, e no registro tem 2 campos para senha, 1 password, outro confirm_pasword.
http://www.littlehart.net/atthekeyboard/2008/01/08/simple-user-registration-in-cakephp/ > > Outro dia, eu estava fazendo um formulário de cadastro de usuários. > E > precisei verificar a senha com o outro campo de confirmação. Mas, > para > o > controlador não ficar cheio de código, pesquisei na internet e > achei a > possíbilidade de fazer um função em AppModel, assim poderá servir > para > todos > os modelos. > > Meu arquivo AppModel ficou assim: > > > > class AppModel extends Model { > > var $name = "App"; > > function equalTo( $field=array(), $compare_field=null ){ > > foreach( $field as $key => $value ){ > $v1 = $value; > $v2 = $this->data[$this->name][ $compare_field ]; > > if($v1 !== $v2) { > return false; > } else { > continue; > } > } > return true; > } > > } > > ?> > > Meu modelo de Usuário ficou assim: > > class Usuario extends AppModel{ > var $name = 'Usuario'; > > var $validate = array( > "nome" => array( > "required" => array("rule"=>VALID_NOT_EMPTY, "message" => > "Entre > com o nome."), > "minLength"=> array("rule" => array("minLength", 3), > "message" > => "Minimo: 3 caracteres."), > ""=>array("rule"=>"#^[[:alpha:] à-ÿÀ-Ý]+\$#", "message" => > "Caracteres inválidos"), > "em branco"=>array("rule"=>VALID_NOT_EMPTY, "message" => > "O nome > deve ser informado.") > ), > "password" => array( > "equal" => array("rule" => array("equalTo", "password2"), > "message" => "Senhas distintas."), > "não vazio"=>array("rule" => VALID_NOT_EMPTY, "message" => > "A > senha deve ser informada.") > ), > "email"=>array( > "email"=>array("rule" => VALID_EMAIL, "message" => "Email > Inválido"), > "embranco"=>array("rule" => VALID_NOT_EMPTY, "message" => > "O > email deve ser informado.") > ), > "login"=>array( > "login unico"=>array("rule"=>array("isUnique","login"), > "message" => "Já existe um usuário com este login."), > "semespaco"=>array("rule"=>"#^([a-zA-Z0-9])+\$#", > "message" => > "Apenas letras, numeros, . , _ e -."), > "vazio"=>array("rule"=>VALID_NOT_EMPTY, "message" => "O > login > deve ser informado.") > ) > > ); > > ?> > > Vocês podem presta atenção onde tem: > > "password" => array( > "equal" => array("rule" => array("equalTo", "password2"), > "message" => "Senhas distintas."), > "não vazio"=>array("rule" => VALID_NOT_EMPTY, "message" => > "A > senha deve ser informada.") > ), > > Achei bem elegante desse modo, concerteza bem melhor do que pelo > controlador(controller). > > Espero que tenha compartilhado uma informação importante e > construtiva > com > vocês. > > Alguém mais experiênte sabe dizer se ainda tem uma forma melhor!? > > Abs, > Sadjow Medeiros Leão. > --~--~---------~--~----~------------~-------~--~----~ > Recebeu esta mensagem porque está inscrito em Grupo "Cake PHP > Português" do Grupos Google. Para enviar mensagens para este grupo, > envie um email para [email protected] Para anular a > inscrição neste grupo, envie um email para cake-php-pt- > [EMAIL PROTECTED] Para mais opções, visite este grupo em > http://groups.google.com/group/cake-php-pt?hl=pt-PT -~----------~--- > -~----~----~------~----~------~--~--- --~--~---------~--~----~------------~-------~--~----~ Recebeu esta mensagem porque está inscrito em Grupo "Cake PHP Português" do Grupos Google. Para enviar mensagens para este grupo, envie um email para [email protected] Para anular a inscrição neste grupo, envie um email para [EMAIL PROTECTED] Para mais opções, visite este grupo em http://groups.google.com/group/cake-php-pt?hl=pt-PT -~----------~----~----~----~------~----~------~--~---
