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 :

Récupérer liste checkbox


Sujet :

Symfony PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 97
    Points : 47
    Points
    47
    Par défaut Récupérer liste checkbox
    Bonjour,

    Je suis sur SF2. J'ai une vue sur laquelle j'affiche un tableau avec tous les enregistrements d'une de mes tables avec une checkbox située à droite de chaque enregistrement comme ceci :



    J'aimerais créer une nouvelle méthode dans mon contrôleur me permettant de récupérer les lignes qui ont été cochées et les afficher à l'aide d'une autre vue.

    Dans ma vue correspondante à l'image ci dessus, j'ai ceci en html :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td><input type="checkbox" name="value[{{entity.id}}]" ></input></td>
    J'ai donc crée une nouvelle méthode dans mon contrôleur mais je ne vois pas comment récupérer chaque ligne avec le foreach.


  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 725
    Points : 1 050
    Points
    1 050
    Par défaut
    Bonjour,

    je pense qu'il faudrait plutôt écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="checkbox" name="mesIds[]" value={{entity.id}}" />
    et dans le controller:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $ids=$this->getRequest()->get('mesIds');
    //$ids est un tableau contenant les ids sélectionnés(en tout cas c'est ce que renverrait $_REQUEST['mesIds']
     
    //pour récupérer les entitées ça doit être un truc comme ça
    $listOfEntities=$this->get('Doctrine')->findRepository('My/Bundle/Entity/Class')->createQueryBuilder('e')->where('e.id in :id')->setAttribute('id',$ids)->getQuery()->getResult();

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    Salut,

    J'ai donc bien ceci dans mon tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      <td><input type="checkbox"  name="mesids[]" value="{{entity.id}}"></input></td>
    Dans mon contrôleur :

    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
     
    	public function deleteselectionAction()
    	{		
     
    		$ids=$this->getRequest()->get('mesids');
    		$request = $this->get('request');  
     
    			foreach($ids as $value) {
     
    				$entities=$value;
    			} 
     
     
            return $this->render('AdlHiringBundle:Interviewer:deleteselection.html.twig', array(
                'entities' => $entities,
    			));
     
    	}

    Dans la vue qui affiche le résultat, j'ai ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	    {% for entity in entities %}
     
    			{{entities}}
     
    		{% endfor %}

  4. #4
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 9
    Points
    9
    Par défaut
    Bonjour,
    je débute avec symfony2 et je voudrais savoir quelles sont les étapes à faire pour récupérer des valeurs d'un checkbox. Exemple: j'ai 10 utilisateurs enregistrés dans la base de données et qui s'affichent dans un tableau. Je voudrais cocher 5 utilisateurs pour les supprimer par la suite. Si c'est possible de me répondre car cela fait 5h que je cherche et je n'est rien trouvée.

  5. #5
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2013
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2013
    Messages : 739
    Points : 1 022
    Points
    1 022
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     {% for entity in entities %}
     
    			<input type="checkbox" name="mesIds[]" value={{entity.id}}" />
     
    		{% endfor %}
    ensuite dans le controlleur tu recupere tout.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $ids=$this->getRequest()->get('mesIds');
    mets un pour sur etre que c'est un array d'id,ensuite dans une boucle foreach par exemple tu fais un remove si tu veux selon les objets qui ont l'id existant dans l'ids
    Code exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
           if ($ids!= NULL) {
                foreach ($user as $a) {
                    if (in_array($a->getId(), array_values($ids))) {
                      /// your code
                    }

  6. #6
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 9
    Points
    9
    Par défaut
    Merci . Je vais essayer ce code .

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Checkbox List
    Bonjour, je me perrmets de vous contacter car je galère un peu dans la récupération des valeurs de checkbox.

    J'ai une vie qui affiche une liste des entités dans la quelle j'ai mis un checkbox:
    view.html.twig
    <h1>Liste des parcours possibles pour ce groupe td</h1>

    <table class="records_list">
    <thead>
    <tr>
    <th>Choix</th>
    <th>Id</th>
    <th>Libellé du parcours</th>
    <th>Année Formation</th>

    </tr>
    </thead>
    <tbody>
    {% for entity in parcours %}
    <tr>
    <td>
    <input type="checkbox" name="mesIds[]" value="{{ entity.id }}"></input>
    </td>
    <td><a href="{{ path('parcours_show', { 'id': entity.id }) }}">{{ entity.id }}</a></td>
    <td>
    {{ entity.libparcourscourt }}
    </td>
    <td>
    {{ entity.anneeformation }}
    </td>
    <td>
    <ul>
    <li>
    <a href="{{ path('parcours_show', { 'id': entity.id }) }}">show</a>
    </li>
    <li>
    <a href="{{ path('parcours_edit', { 'id': entity.id }) }}">edit</a>
    </li>
    </ul>
    </td>
    </tr>
    {% endfor %}
    </tbody>
    </table>

    <ul>
    <li>
    <a href="{{ path('groupetd_valide') }}">
    Voir le choix des parcours
    </a>
    </li>
    </ul>

    {% endblock %}


    J'ai crée une action pour afficher le résultat de l'action le plus simplement possible avec var_dump
    public function valideAction()
    {
    $ids=$this->getRequest()->get('mesIds');
    $request = $this->get('request');
    //echo($ids);
    var_dump($ids);


    }

    J'ai rien qui s'affiche en sortie quand je sélectionne en plus j'ai un message d'erreur de type:
    "The controller must return a response (null given). Did you forget to add a return statement somewhere in your controller?"

    Merci de votre aide

Discussions similaires

  1. [Débutant] récupérer liste des checkbox cochés
    Par Veidt dans le forum Windows Phone
    Réponses: 1
    Dernier message: 16/07/2013, 09h30
  2. Récupérer liste multiple
    Par nizarsm dans le forum ASP
    Réponses: 3
    Dernier message: 20/11/2006, 08h47
  3. [PHP-JS] Récupérer champ checkbox dans une fonction php
    Par Tyler Durden dans le forum Langage
    Réponses: 7
    Dernier message: 09/11/2006, 00h54
  4. Réponses: 7
    Dernier message: 24/04/2006, 10h31
  5. Réponses: 9
    Dernier message: 19/03/2006, 13h49

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