voilà j'ai ajouté le code de la fonction edit
Bonjour,
je trouve un probleme quand je modifie mes formulaires les modifications ne se sauvegardent pas si vous avez des idées merci de bien vouloir m'aider .
et meme si je suis connectée depuis un compte les informations sauvegardé dans la base de données ne s'affichent pas .
si vous avez besoin d un certain code n hesitez pas à me le demander .
merci
voici mon code pour la fonction edit :
public function edit()
{
$user = $this->Users->get($this->Auth->user('id'));
if ($this->request->is(['post'])) {
$this->Users->patchEntity($user, $this->request->data);
// $user->id = $this->Auth->user('id');
$i = $this->Users->patchEntity($user,$this->request->data);
if ($this->Users->save($user)) {
$this->Flash->success(__('Votre article a été mis à jour.'));
return $this->redirect(['action' => 'index']);
}
$this->Flash->error(__('Impossible de mettre à jour votre article.'));
}
$this->set('user', $user);
}
5 réponses
je parle de la mise à jour des formulaires
Hello,
Essaies ça dans ta première condition :
A mon avis, tu ne rentres pas dans la condition telle qu'elle est actuellement, c'est pour ça que rien ne se passe.
Vire aussi cette ligne, elle ne sert à rien :
Tiens nous au courant !
je l'ai rajouté et j'ai viré l'autre ligne mais ça marche toujours pas il me donne cette erreur :
Record not found in table "users" with primary key [NULL]
en plus il ne sauvegarde pas les informations déjà enregistrées dans la base de données
voici mon code actuel :
public function edit()
{
$user = $this->Users->get($this->Auth->user('id'));
if ($this->request->is(['post', 'put', 'patch'])) {
$this->Users->patchEntity($user, $this->request->data);
$user = $this->Users->patchEntity($user,$this->request->data);
//$this->Users->patchEntity($user, $this->request->data);
//$user->id = $this->Auth->user('id');
if ($this->Users->save($user)) {
$this->Flash->success(__('Votre article a été mis à jour.'));
return $this->redirect(['action' => 'index']);
}
$this->Flash->error(__('Impossible de mettre à jour votre article.'));
}
$this->set('user', $user);
}
c'est bon ça marche maintenant merci pour vos aides