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

Symfony PHP Discussion :

SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '' for key 'email_address'


Sujet :

Symfony PHP

  1. #1
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 260
    Points : 142
    Points
    142
    Par défaut SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '' for key 'email_address'
    Bonjour,
    J'ai installé sfForkedDoctrineApply et j'essaie de le faire marché mais je rencontre beaucoup de difficultés. D'abord j'ai du désactiver temporairement la confirmation par e-mail pour pouvoir enregistrer un membre et faire des essais, ensuite, il est impossible d'uploader une photo avec un champ de type file (sans parler de la génération de miniature), et maintenant, je constate que je n'arrive pas à enregistrer des utilisateurs en plus du premier. Quand on essaie, ca renvoie cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '' for key 'email_address'
    J'ai revue le schéma en supprimant le unique true sous le champ email_address, mais rien n'y fit. J'ai fait des recherches sur le web mais avec des résultats trop maigres pour me permettre de le résoudre tout seul. Quelqu'un pourrait m'aider ? Merci.

  2. #2
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Quel version de sfGuard ?
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  3. #3
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 260
    Points : 142
    Points
    142
    Par défaut
    sfDoctrineGuardPlugin-5.0.0

  4. #4
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Le plugin sfForkedDoctrineApply a été mis à jour et est maintenant compatible avec la v5 de sfGuard.

    Je ne pense pas que ton application soit déjà en production, donc vérifie a avoir la dernière version des deux plugins et régénère le model.

    Lit attentivement la documentation, en "oubliant" la partie mise à jour, vu que tu as une application "neuve" et tu ne devrais plus avoir de problèmes.

    Et surtout, ne perd pas ton temps à essayer de récupérer une base d'essai existante avec les "migrate" fournis par sfForkedDoctrineApply, sauf si tu veux faire des essais, c'est du temps perdu pour toi.
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  5. #5
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 260
    Points : 142
    Points
    142
    Par défaut
    J'ai réinstallé la sfDoctrineGuard 5.0.0 et sfForkedDoctrineApply 1.4.1, les dernières versions que j'ai trouvées. L'erreur persiste et je commence à soupçonner un bug sur sfDoctrineGuard. Je crois que je vais utiliser des versions antérieures comme conseillé ici: http://forum.symfony-project.org/vie...Plugin#p103090

  6. #6
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Ce peut être une solution, et cela fonctionnait plutôt bien.

    Le seul bug important que je connaisse sur ces versions ne concerne pas la sécurité et est dans une partie que tu n'utilises pas (nettoyage des sessions en base de données).
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  7. #7
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 260
    Points : 142
    Points
    142
    Par défaut
    Ca n'a pas marché. J'ai pris sfGuard 4.0.3 et sfFDA 1.3.0. D'abord le sfApplyApply form que j'ai étendu n'est pas conçu pour charger des fichiers. Donc j'ai dû changer cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->form->bind($formValues);
    en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->form->bind($formValues, $request->getFiles($this->form->getName()));
    dans le sfApplyActionsLibrary pour faire disparaître cette erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    This form is multipart, which means you need to supply a files array as the bind() method second argument.
    Après, c'est au tour d'une autre erreur de se faire jour:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Notice: Undefined variable: profile in C:\wamp\www\nortb\lib\vendor\symfony\plugins\sfForkedDoctrineApplyPlugin\lib\action\sfApplyActionsLibrary.class.php on line 43
     
    Fatal error: Call to a member function setValidateAt() on a non-object in C:\wamp\www\nortb\lib\vendor\symfony\plugins\sfForkedDoctrineApplyPlugin\lib\action\sfApplyActionsLibrary.class.php on line 43
    En regardant dans le fichier la variable profile n'avait été définie nulle par avant. J'ai changé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $profile->setValidateAt( $date->format( 'Y-m-d H:i:s' ) );
    en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->form->getObject()->setValidateAt( $date->format( 'Y-m-d H:i:s' ) );
    Cette étape passé, j'ai obtenu une erreur Could not load file, et j'ai dû désactiver le champ photo de type file du formulaire. Finalement ça a renvoyé ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '' for key 'email'
    En attendant de trouver une solution DEFINITIVE, je vais abandonner sfFDA et publier mon projet, surtout qu'en suivant ton conseil, j'ai réglé mon problème d'authentification. Toutefois, je suis ouvert à toute solution pour régler les problèmes que me pose sfFDA.

  8. #8
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    A priori, la dernière version de sfFDA est compatible avec la version 5 de sfGuard.

    Y a plus qu'à essayer. Faut que je m'y colle...
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

Discussions similaires

  1. Réponses: 3
    Dernier message: 21/03/2014, 13h42
  2. Réponses: 3
    Dernier message: 02/06/2011, 16h47
  3. [MySQL] SQLSTATE[23000]: Integrity constraint violation
    Par okoweb dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 17/05/2011, 09h57
  4. Réponses: 9
    Dernier message: 24/04/2011, 17h03
  5. Réponses: 3
    Dernier message: 04/03/2011, 09h30

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