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 :

Un probleme de récupération de valeur [1.x]


Sujet :

Symfony PHP

  1. #1
    Membre chevronné
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Billets dans le blog
    7
    Par défaut Un probleme de récupération de valeur
    Salut ,
    Excuser moi pour le titre mais j'ai pas trouver un + significatif !
    Voila j'ai 3 table et je cherche sans succées d'afficher une valeur dans une liste de dossiers .
    En effet la requette marche impécablement sauf que dans l'affichage du résultat j'arrive pas a afficher le libele de l'etat associé au dossier via la table d'association etape_dossier

    le schéma des tables est en pieces jointes .

    Merci d'avance
    Images attachées Images attachées  

  2. #2
    Membre chevronné Avatar de icer
    Inscrit en
    Janvier 2006
    Messages
    332
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 332
    Par défaut
    Bonjour,

    Je ne vois pas où est le problème.
    Tu pourrais nous montrer ta requête?

  3. #3
    Membre chevronné
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Billets dans le blog
    7
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT dossier.ID_DOSSIER, dossier.ID_DECISION, 
    dossier.LIBELE_DOSSIER,dossier.DATE_DECISION FROM dossier INNER 
    JOIN etape_dossier ON (dossier.ID_DOSSIER = etape_dossier.ID_DOSSIER) 
    INNER JOIN etat_dossier ON (etape_dossier.ID_ETAT_DOSSIER 
    =etat_dossier.ID_ETAT_DOSSIER) WHERE etat_dossier.ID_ETAT_DOSSIER=1
    En effet le probleme n'est plus dans la requette (elle m'affiche des resultat déja ) par contre je trouve pas comment afficher le libele de l'etat du dossier qui n'est pas attaché directement au dossier via un foreignkey mais via la table d'association
    en effet voila a ce que ressemble mon code dans l'action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
      public function executeList()
      {
     
    	$c = new Criteria() ;
    	$c->addJoin(DossierPeer::ID_DOSSIER, EtapeDossierPeer::ID_DOSSIER,Criteria::INNER_JOIN) 				;
    	$c->addJoin(EtapeDossierPeer::ID_ETAT_DOSSIER, EtatDossierPeer::ID_ETAT_DOSSIER,Criteria::INNER_JOIN) 	;
    	$c->add(EtatDossierPeer::ID_ETAT_DOSSIER, sfConfig::get('app_etat_dossier_attente_boc')) ;
    	$this->dossiers = DossierPeer::doSelect($c);
     
      }

  4. #4
    Membre chevronné Avatar de icer
    Inscrit en
    Janvier 2006
    Messages
    332
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 332
    Par défaut
    Et si tu rajoutais etat_dossier.libele_etat_dossier dans ta clause SELECT.

  5. #5
    Membre chevronné
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par icer Voir le message
    Et si tu rajoutais etape_dossierdossier.libelle_etape dans ta clause SELECT.
    ba comment le faire ?
    voila en haut le contenu de mon action

  6. #6
    Membre chevronné Avatar de icer
    Inscrit en
    Janvier 2006
    Messages
    332
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 332
    Par défaut
    Je ne connais pas la classe Criteria et à quoi elle sert. Essayes de voir dans sa documentation.

    Sinon, avec une requête SQL il suffit de rajouter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT dossier.ID_DOSSIER, dossier.ID_DECISION, 
    dossier.LIBELE_DOSSIER,dossier.DATE_DECISION, etat_dossier.LIBELE_ETAT_DOSSIER
    ...

  7. #7
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Par défaut
    Sinon, si la solution proposée ne fonctionne pas, peux-tu expliquer ce que tu veux faire exactement ? Tu saisis un numéro (ou un nom) de dossier, et tu veux connaître tout ce qui concerne l'étape du dossier, et afficher son état ?
    Parce que si c'est le cas, je me demande si ce ne serait pas mieux de partir d'une criteria basée sur un etape_dossier, d'où tu déduis le dossier et l'état_dossier correspondant, grâce aux méthodes getDossier et getEtatDossier.
    Non ?

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 8
    Par défaut
    Je suis d'accord avec Tsilefy, à mon avis, c'est plus cela que tu voulais faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public function executeList()
      {
    	$c = new Criteria() ;
    	$c->addJoin(DossierPeer::ID_DOSSIER, EtapeDossierPeer::ID_DOSSIER,Criteria::INNER_JOIN);
    	$c->addJoin(EtapeDossierPeer::ID_ETAT_DOSSIER, EtatDossierPeer::ID_ETAT_DOSSIER,Criteria::INNER_JOIN);
    	$c->add(EtatDossierPeer::ID_ETAT_DOSSIER, sfConfig::get('app_etat_dossier_attente_boc')) ;
    	$this->etapes_dossiers = EtapeDossierPeer::doSelect($c);
    	
      }
    Ensuite, dans ton template, tu peux faire un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
    foreach ($etapes_dossiers as $etape_dossier)
    {
      echo "Libellé : " . $etape_dossier->getDossier()->getLibeleDossier() . "<br />\n";
      echo "Etat : " . $etape_dossier->getEtatDossier()->getLibeleEtatDossier() . "<br />\n";
    }
    ?>

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

Discussions similaires

  1. [Smarty] Probleme liste, récupération de valeurs
    Par Ponpogno dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 19/02/2014, 15h48
  2. Probleme de récupération d'une valeur dans un url
    Par xavpiaf dans le forum ASP.NET
    Réponses: 5
    Dernier message: 03/04/2008, 11h09
  3. Probleme de récupération de valeur
    Par xborgers dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 06/08/2007, 14h08
  4. [LDAP] probleme récupération de valeur d'un attribut
    Par bikette63 dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 24/11/2006, 13h55

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