Desidero inserire un campo per la ripetizione della password nella mia applicazione Web basata su Yii durante la creazione e l'aggiornamento dell'utente. Quando creo, voglio che entrambi i campi siano obbligatori e quando l'aggiornamento, l'utente può lasciare questi campi vuoti (la password sarà la stessa) o inserire la nuova password e confermarla. Come posso punteggiarlo?Campo ripetizione password Yii
risposta
Il primo, è necessario creare un nuovo attributo nel modello (in questo esempio lo chiamiamo repeatpassword):
class MyModel extends CActiveRecord{
public $repeatpassword;
...
successivo, è necessario definire una regola per assicurarsi che corrisponda il vostro attuale attributo Password:
public function rules() {
return array(
array('password', 'length', 'max'=>250),
array('repeatpassword', 'compare', 'compareAttribute'=>'password', 'message'=>"Passwords don't match"),
...
);
}
Ora, quando si crea un nuovo modello, il modello sarà non convalida a meno che la password e repeatpassword attributi partita. Come hai detto, questo è valido per creando un nuovo record, ma non vuoi convalidare la password corrispondente sull'aggiornamento . Per creare questa funzionalità, possiamo usare model scenarios
Abbiamo semplicemente cambiare il repeatpassword regola come visto sopra per avere una parmanter aggiuntivo:
...
array('repeatpassword', 'compare', 'compareAttribute'=>'password', 'message'=>"Passwords don't match",'on'=>'create'),
...
Tutto ciò che rimane da fare ora, è quando si dichiara il proprio modello su per la funzione di creare, utilizzare:
$model = new MyModel('create');
Invece del normale:
$model = new MyModel;
Un trucco sulla configurazione corrente è se l'utente sta tentando di aggiornare la password in un secondo momento. Ma a parte questo, sembra buono. – acorncom
Generalmente, probabilmente chiederesti all'utente di inserire la propria password due volte se si aggiornassero. Ho comunque tenuto conto di ciò con lo scenario ($ model = new MyModel ('create');) –
È possibile utilizzare il nome sceario come aggiornamento che è predefinito ogni volta che Yii crea un modello AR. e così il tuo modello diventa '$ model = new MyModel;' –
- 1. Yii Cambia password per admin
- 2. Tipo immissione ingresso password password campo focus
- 3. Come creare un campo password in xcode
- 4. Hashing e salting di un campo password
- 5. Come convalidare Campo password in Android
- 6. Qt - Campo password, avviso su Caps-Lock
- 7. Espressione regolare nel campo Android per password
- 8. Come visualizzare testo nel campo password
- 9. addColumn posizione migrazione Yii
- 10. Yii DropDownList valore predefinito
- 11. cos'è Yii :: app() in framework php yii
- 12. Come posso aggiornare solo determinati campi in un framework Yii?
- 13. Yii rivelano
- 14. come disegnare il campo Password proprio come disegniamo Ember.TextField?
- 15. Come rilevare quando si immette un campo password
- 16. Come creare il campo di immissione della password in django
- 17. Modella Django come aggiungere un campo per confermare la password?
- 18. Modifica dei simboli visualizzati di un campo password HTML
- 19. Validatore Laravel 4 per campo password nell'account di modifica
- 20. CSS Sprites Ripetizione immagini
- 21. Ripetizione trame in OpenGL
- 22. Android VideoView ripetizione
- 23. Ripetizione di Java Array
- 24. Ritardo ripetizione di NServiceBus
- 25. ripetizione animazione CSS3
- 26. Ripetizione impulso Animazione
- 27. Ripetizione di "Eventi" (Calendario)
- 28. Elementi di ripetizione WPF
- 29. Yii Procedura guidata modulo multipagina
- 30. Yii 2 API RESTful autenticare con OAuth2 (modello avanzato Yii 2)
http://www.yiiframework.com/wiki/277/model-password-confirmation-field/ – Stu