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 :

affichage champ id dans formulaire symfony


Sujet :

Symfony PHP

  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2008
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 131
    Par défaut affichage champ id dans formulaire symfony
    Bonjour tous le monde

    Je vous explique mon problème

    J'ai généré un formulaire à la volée.. ce formulaire correspond à un model utilisateur, et au moment de l'affichage, je lui dit clairement de m'afficher le nom, le prénom et l'id de l'utilisateur, mais il m'affiche que le nom et prénom et pas l'id.
    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
     
        <ul>
          <li id="liste_entete">
            <?php echo $form1['nom']->renderError() ?>
            <?php echo $form1['nom']->renderLabel() ?>
            <?php echo $form1['nom']->render() ?>
          </li>
          <li id="liste_entete">
            <?php echo $form1['prenom']->renderError() ?>
            <?php echo $form1['prenom']->renderLabel('Prénom') ?>
            <?php echo $form1['prenom']->render() ?>
          </li>
          <li id="liste_entete">
            <?php echo $form1['id']->renderError() ?>
            <?php echo $form1['id']->renderLabel('Matricule') ?>
            <?php echo $form1['id']->render() ?>
          </li>
        </ul>
    Voila le code correspond
    Personne a eu ce problème avant?

    Merci beaucoup

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    321
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 321
    Par défaut
    Bonjour,
    Il faut aller voir dans votre UtilisateurForm.class.php.
    Car par defaut dans le BaseUtilisateurForm le champ id est en inputHidden, il est donc normal que vous ne le trouviez pas dans votre formulaire.

    Pour résoudre cela, dans UtilisateurForm.class.php fait un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->widgetSchema['id'] = new sfWidgetFormInput(); (si vous voulez que le champ ne soit pas modifiable, modifiez les options.

  3. #3
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    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
    Par défaut
    Dans le cas particulier du champ id, s'il est clef primaire auto incrémenté, le mieux est de ne pas s'occuper d'en empêcher la modification. Le moteur de la base générera une erreur en cas de modification.

    Si non, il y a un message récent qui donne un widget show only. Dans ce cas, il convient de mettre deux fois l'id dans le formulaire, une fois en masqué (nécessaire pour symfony) et une fois en affiché.

    Question subsidiaire, quel est l'intérêt d'afficher l'id ?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    321
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 321
    Par défaut
    Je pense qu'il se sert du champ id pour un "Matricule", peut être donc relié au nom de la personne.

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2008
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 131
    Par défaut
    excatement c'est ça, il représente le matricule ...

    j'ai essayé ce que vous m'avez dit mimi68
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            <?php echo $form1['id']->render(array('hidden' => true)) ?>
            <?php echo $form1['id']->renderError() ?>
            <?php echo $form1['id']->renderLabel('Matricule') ?>
            <?php echo $form1['id']->render() ?>
    j'ai essayé ça , mais il me cache les 2 , et le premier et le 2éme.


    Merci

  6. #6
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    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
    Par défaut
    Mais on reste d'accord que le champ Id est une clef primaire auto incrémentée ?

  7. #7
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2008
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 131
    Par défaut
    oui c'est une clé primaire, si tu veux c'est juste pour faire une recherche par matricule(id) , mais ça ne sert pas à la modification, ni la suppression, donc j'ai essayé ce que vous m'avez proposé, mais ça ne marche pas... à cause de ma syntaxe peut être?
    Merci

  8. #8
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    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
    Par défaut
    Vu que tu génères déjà ton form à la main, ceci devrait répondre à tes attentes.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            <?php echo $form1['id']->render(array('hidden' => true)) ?>
            <?php echo $form1['id']->renderError() ?>
            <?php echo $form1['id']->renderLabel('Matricule') ?>
            <?php echo $form1['id']->getValue('Matricule') ?>

  9. #9
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2008
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 131
    Par défaut
    apparamant, je n'ai pas bien expliquer mon problème..

    En fait dans un formulaire, je veux afficher 3 champs, Nom, Prénom, ID. après l'utilisation de ces champs ça sera pour aider une recherche par nom ou par prénom ou encore id.

    Le problème quand j'ai fait la méthode décrite avant .. il m'affiche pas le champ input de l'id

    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
     
     <ul>
          <li id="liste_entete">
            <?php echo $form1['nom']->renderError() ?>
            <?php echo $form1['nom']->renderLabel() ?>
            <?php echo $form1['nom']->render() ?>
          </li>
          <li id="liste_entete">
            <?php echo $form1['prenom']->renderError() ?>
            <?php echo $form1['prenom']->renderLabel('Prénom') ?>
            <?php echo $form1['prenom']->render() ?>
          </li>
          <li id="liste_entete">
            <?php echo $form1['id']->renderError() ?>
            <?php echo $form1['id']->renderLabel('Matricule') ?>
            <?php echo $form1['id']->render() ?>
          </li>
        </ul>
    pour votre réponse, c'est comme si on veut afficher que la valeur de l'id .. alors mon formulaire devrait être nom : <input nom> prenom : <input prenom> et Matricule: <input: id>

    c'est ce que je n'arrive pas à le faire, puisque l'inputText de l'id est cahé


    Merci

  10. #10
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    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
    Par défaut
    Ok, tu veux faire un formulaire de recherche pour pouvoir chercher sur le nom ou le prénom ou l'id.

    Bon, il aura été plus rapide de commencer par là.

    C'est plutôt simple (quoique). Le formulaire existe déjà, mais ce trouve dans lb/filtre/doctrine/...

    Il est conçu pour faire un filtre de recherche et, une fois les données de retour validée, il permet même de générer le sql nécessaire à la requête.

Discussions similaires

  1. Champs obligatoires dans formulaire
    Par obehin dans le forum Langage
    Réponses: 6
    Dernier message: 15/04/2012, 11h13
  2. [AC-2002] Affichage champs variables dans un formulaire
    Par carabistouille dans le forum IHM
    Réponses: 2
    Dernier message: 06/12/2011, 21h36
  3. Champ calculé dans formulaire avec conditions
    Par applefield dans le forum IHM
    Réponses: 4
    Dernier message: 30/08/2007, 17h59
  4. affichage liste déroulante dans formulaire
    Par emmablue dans le forum Access
    Réponses: 1
    Dernier message: 25/07/2007, 19h00
  5. Réponses: 5
    Dernier message: 31/03/2007, 23h36

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