IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

Symfony modification de mot de passe message erreur: Expected argument of type "Symfony\Component\HttpFoundati


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2022
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2022
    Messages : 4
    Par défaut Symfony modification de mot de passe message erreur: Expected argument of type "Symfony\Component\HttpFoundati
    Bonjour,

    je débute avec Symfony et j'essaie de créer un formulaire où l'on pourra modifier le mot de passe. Je suis à la dernière étape et j'ai ce message d'erreur

    Expected argument of type "Symfony\Component\HttpFoundation\Request", "null" given

    in C:\wamp64\www\laboutique\vendor\symfony\form\Extension\HttpFoundation\HttpFoundationRequestHandler.php:44

    Merci d'avance, Voici le code php:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    <?php
     
    namespace App\Controller;
     
    use App\Form\ChangePasswordType;
    use Doctrine\ORM\EntityManagerInterface;
     
    use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
    use Symfony\Component\HttpFoundation\Request;
    use Symfony\Component\HttpFoundation\Response;
    use Symfony\Component\Routing\Annotation\Route;
    use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface;
     
    class AccountPasswordController extends AbstractController
    {
     
        public function __construct(EntityManagerInterface $entityManager)
        {
            $this->entityManager=$entityManager;
        }
     
        /**
         * @Route("/compte/modifier-mot-de-passe", name="account_password")
         * @param Request $request
         * @param UserPasswordEncoderInterface $encoder
         * @return Response
         */
        public function index(Request $request, UserPasswordEncoderInterface $encoder)
        {
            $notification=null;
     
            $user=$this->getUser();
            $form=$this->createForm(ChangePasswordType::class, $user);
     
            $form->handleRequest();
     
            if($form->isSubmitted() && $form->isValid()){
     
                $old_pwd=$form->get('new_password')->getData();
     
                if($encoder->isPasswordValid($user,$old_pwd)){
                    $new_pwd=$form->get('new_password')->getData();
                    $password=$encoder->encodePassword($user, $new_pwd);
     
                    $user->setPassword($password);
                    $this->entityManager->flush();
                    $notification="Votre mot de passe a bien été mis à jour";
     
                } else {
                    $notification="Votre mot de passe actuel n'est le bon";
                }
            }
            return $this->render('account/password.html.twig',[
                'form'=>$form->createView()
            ]);
        }
    }

  2. #2
    Membre émérite
    Homme Profil pro
    Autre
    Inscrit en
    Juillet 2021
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Juillet 2021
    Messages : 441
    Par défaut
    Bonjour,

    Essaye de passer ton objet $request en paramètre de la méthode handleRequest() : https://symfony.com/doc/current/form...ocessing-forms

  3. #3
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2022
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2022
    Messages : 4
    Par défaut ça marche!!
    Bonjour,

    Merci beaucoup ça marche très bien comme ça.

    Bonne journée!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/01/2022, 11h18
  2. Réponses: 3
    Dernier message: 22/06/2007, 19h01
  3. Réponses: 2
    Dernier message: 02/02/2007, 14h53
  4. Réponses: 5
    Dernier message: 13/03/2006, 15h51
  5. [LDAP]modification du mot de passe - ligne de commande
    Par sangei dans le forum API standards et tierces
    Réponses: 24
    Dernier message: 01/12/2005, 14h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo