Ich kann nicht mit diesem Skript erfolgreich anmelden.yii2 Hashing Passwort registrieren und Anmelden
Loginform.php
public function validatePassword($attribute, $params)
{
if (!$this->hasErrors()) {
$user = $this->getUser();
if (!$user || $user->validatePassword($this->password)) {
$this->addError($attribute, 'Incorrect name/password.');
}
}
}
In meinem Modell habe ich dieses
User.php
public function beforeSave($insert) {
if (parent::beforeSave($insert)) {
if ($this->isNewRecord) {
$this->password = $this->setPassword($this->password);
}
return true;
}
return false;
}
public function validatePassword($password) {
return Yii::$app->getSecurity()->validatePassword($password, $this->password);
}
public function setPassword($password) {
return $this->password = Yii::$app->security->generatePasswordHash($password);
}
Hier ist meine Anmeldung Skript
Signupform.php
public function signup() {
if($this->validate()) {
$user = new User();
$user->username = $this->username;
$user->email = $this->email;
$user->setPassword($this->password);
$user->save();
return $user;
}
return null;
}
Kann mir jemand dabei helfen bitte? Vielen Dank.
diese $ von Anmeldungen Funktion entfernen user-> setPassword ($ this-> Passwort); Sie definds es bereits im Benutzermodell deforeSave Funktion –
funktioniert nicht, es ist nichts in meine Tabelle eingefügt .. können Sie die Skripte anpassen? danke – kaizer
es kann einige Validierung Fehler print_r ($ user ->. getError()); sterben(); können Sie dies bitte überprüfen –