Hi Christian,
On 1 Jan., 17:34, christianstrang <[EMAIL PROTECTED]>
wrote:
> Hey Leute,
> wollte mal fragen ob jemand weiß, wie man mit CakePHP ein
> Registrierungsformular erstellt, welches auch ein Passwort-
> Bestätigungsfeld hat, bislang habe ich folgendes:
Das ist leider gar nicht so einfach, wobei ich bei einigen Sachen
nicht genau weiß, ob das ein Bug in CakePHP 1.2.x ist, oder so
beabsichtigt ist.
Du musst auf jeden Fall das zweite Passwortfeld mit einem anderen
Namen versehen. Also z.B. "password_confirm" statt nur "password". Ich
hatte nun mal versucht, einfach eine eigene Methode für die
Validierung anzugeben und darin dann "password" und "confirm_password"
zu vergleichen. Seit einer bestimmten CakePHP 1.2.x Version sind dort
dann aber nur noch die Felder vorhanden, die auch in der Datenbank
sind. Also kannst Du das dann leider nicht über die Validierung
machen, sondern musst das händisch im Controller machen:
(Pseudocode)
function add() {
if(!empty($this->data)) {
if($this->User->create($this->data) && $this->User-
>validates()) {
if($this->data['User']['password'] !== $this->data['User']
['password_confirm']) {
$this->setFlash('The passwords do not match.');
} else if($this->User->save($this->data)) {
$this->Session->setFlash('Du hast dich erfolgreich
registriert');
//Eigentlich soll der Redirect den User auf seine
"Einstellungen"-
Seite leiten wo er seine Interessen/Tags eintragen kann
$this->redirect('/users/add');
} else {
$this->Session->setFlash('Fehler');
}
}
}
}
Statt dem setFlash() im Fehlerfall kannst Du auch $this->User-
>invalidate('password', 2) angeben, wobei 0 der Index aus dem Error-
Array ist, welches Du im View definierst.
Zumindest in der Theorie sollte es so funktionieren :-)
Gruß,
Dirk
--~--~---------~--~----~------------~-------~--~----~
Sie erhalten diese Nachricht, weil Sie Mitglied sind von Google Groups-Gruppe
"CakePHP-de für deutsche CakePHP Entwickler".
Für das Erstellen von Beiträgen in dieser Gruppe senden Sie eine E-Mail
an [email protected]
Um sich von dieser Gruppe abzumelden, senden Sie eine E-Mail an [EMAIL
PROTECTED]
Weitere Optionen finden Sie in dieser Gruppe unter
http://groups.google.com/group/cakephp-de?hl=de
-~----------~----~----~----~------~----~------~--~---