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

Langage PHP Discussion :

Récupération d'un tableau


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    IT Développeur
    Inscrit en
    Mars 2009
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Développeur

    Informations forums :
    Inscription : Mars 2009
    Messages : 274
    Points : 96
    Points
    96
    Par défaut Récupération d'un tableau
    Bonjour,

    Je débute en POO avec PHP. Je bloque certainement sur une bêtise mais après avoir cherché sur internet, je n'ai pas trouvé de solution.
    J'ai une requête qui retourne un tableau.
    J'essaie de récupérer ce tableau dans ma vue (je suis en MVC) pour remplir un champ Select.
    Pour cela, je récupère mon tableau comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     $response = (new GenderManager())->getGender();
    Mon champs select se remplit bien mais la récupération me provoque une erreur : "Array to string conversion in..."

    Je ne vois pas comment faire autrement.
    Merci pour votre aide

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 234
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 234
    Points : 15 531
    Points
    15 531
    Par défaut
    montrez nous ce que contient $response et comment vous l'utilisez.

  3. #3
    Membre régulier
    Profil pro
    IT Développeur
    Inscrit en
    Mars 2009
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Développeur

    Informations forums :
    Inscription : Mars 2009
    Messages : 274
    Points : 96
    Points
    96
    Par défaut
    Voici ce qu'il contient :
    Nom : Tableau.JPG
Affichages : 90
Taille : 77,0 Ko

    Après je parcours comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    // l'appel
    $response = (new GenderManager())->getGender();
     
    // Exploitation des résultats
    foreach($response as $gender){
    ...
    }
    C'est au moment de l'appel que se pose le problème.
    Merci pour votre aide

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 234
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 234
    Points : 15 531
    Points
    15 531
    Par défaut
    Citation Envoyé par paintbox Voir le message
    C'est au moment de l'appel que se pose le problème.
    c'est ce code là qu'il faut nous montrez même s'il ne fonctionne pas comme vous voulez.

  5. #5
    Membre régulier
    Profil pro
    IT Développeur
    Inscrit en
    Mars 2009
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Développeur

    Informations forums :
    Inscription : Mars 2009
    Messages : 274
    Points : 96
    Points
    96
    Par défaut
    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     echo '<select name="Gender" id="Gender" class="form-control" title="Choisissez un genre">';
                    if(isset($response)){
                    echo '<option value="Neutre">-</option>';
                        foreach($response as $gender){
                            if($gender->ShortDescription() == $Genre){
                                echo '<option value="'.$gender->ShortDescription().'" selected>'.$gender->Description().'</option>';
                            }
                            else{
                                echo '<option value="'.$gender->ShortDescription().'">'.$gender->Description().'</option>';
                            }
                        }
                    }
                echo '</select>';

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 234
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 234
    Points : 15 531
    Points
    15 531
    Par défaut
    j'ai une idée pour simplifier 2 lignes de votre code mais dans le principe, c'est ce qui se fait habituellement.
    donc il y a un surement un souci dans les méthodes "ShortDescription" et "Description", montrez nous le code de ces méthodes.

  7. #7
    Membre régulier
    Profil pro
    IT Développeur
    Inscrit en
    Mars 2009
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Développeur

    Informations forums :
    Inscription : Mars 2009
    Messages : 274
    Points : 96
    Points
    96
    Par défaut
    Ce sont tous les 2 des Getter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    public function shortDescription(){ return $this->m_shortDescription;}
    public function description(){ return $this->m_description;}

  8. #8
    Membre éprouvé
    Femme Profil pro
    Service informatique presque à moi seule (TPE), ex-architecte fonctionnel
    Inscrit en
    Août 2017
    Messages
    358
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 56
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Service informatique presque à moi seule (TPE), ex-architecte fonctionnel
    Secteur : Finance

    Informations forums :
    Inscription : Août 2017
    Messages : 358
    Points : 931
    Points
    931
    Par défaut
    N'y a t-il pas un problème de casse (ShortDescription vs shortDescription) ?
    Les problèmes sont des opportunités en vêtements de travail. Henry H. Kaiser
    Il n'est pas de problème dont une absence de solution ne finisse par venir à bout. Henri Queuille

  9. #9
    Membre régulier
    Profil pro
    IT Développeur
    Inscrit en
    Mars 2009
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Développeur

    Informations forums :
    Inscription : Mars 2009
    Messages : 274
    Points : 96
    Points
    96
    Par défaut
    Bonjour, j'ai finalement résolu mon problème en passant par le Controlleur et ça ne pose plus de problème.
    Merci pour votre aide.

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

Discussions similaires

  1. Récupération d'un tableau de cases à cocher
    Par DonPardo dans le forum MVC
    Réponses: 6
    Dernier message: 26/01/2008, 17h06
  2. Réponses: 0
    Dernier message: 28/11/2007, 17h03
  3. Récupération de données tableau en PL/SQL
    Par sbonidan dans le forum PL/SQL
    Réponses: 1
    Dernier message: 23/01/2007, 13h23
  4. [Tableaux] Récupération d'un tableau ?
    Par dunbar dans le forum Langage
    Réponses: 8
    Dernier message: 22/11/2006, 18h57
  5. Réponses: 8
    Dernier message: 30/04/2006, 15h42

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