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 les données d'une jointure: symfony [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 23
    Par défaut récupérer les données d'une jointure: symfony
    bonsoir tout le monde,

    lors d'une jointure, je n'ai pas pu afficher aucune donnée,
    encore je ne sais pas si le problème provient de l'affichage ou bien ma méthode n'a pas pu récupéré les données

    si quelqu'un peut m'aider je serai très reconnaissante
    //ArticlesTable.class.php
    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
    19
    20
    21
     
    static public function getArticleRupture()
        {
         $q=Doctrine_Query::create()
               ->select('a.codearticle',
                        'a.ref',
                        'a.designationarticle',
                    'a.designationlongarticle',
                    'a.stockreel',
                    'a.minStock',
                    'a.stocktheorique',
                    'a.gestionstock',
                      'a.bloque',
                        'r.libellerayon')
               ->from('Articles a')
               ->leftJoin('a.Rayon r')
               ->where('r.coderayon = ?', 'a.codearticle')
               ->andWhere('a.GestionStock=?','1')
               ->andWhere('a.Stockreel <=?','a.MinStock');
             return $q->execute(array(), Doctrine_Core::HYDRATE_ARRAY);
        }
    //action.class.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public function executeIndex(sfWebRequest $request)
      {
          $this->ruptures = ArticlesTable::getArticleRupture();
      }
    et pour mon code d'affichage;
    // indexSuccess.php:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <table>
      <caption> Liste des Articles en rupture de stock </caption>
      <thead>
        <tr>
          <th>CodeArticle</th>
          <th>Désignation</th>
          <th>Désignation Longue </th>
          <th>Stock réel</th>
          <th>Stock Min</th>
          <th>Stock théorique</th>
          <th>Géré.Stock</th>
          <th>Bloqué</th>
          <th>Rayon</th>
        </tr>
      </thead>
      <tbody>
        <?php foreach ($ruptures as $rupture)
          {
        ?>
        <tr>
          <td><?php echo $rupture->getCodeArticle() ?></td>
          <td><?php echo $rupture->getREF() ?></td>
          <td><?php echo $rupture->getDesignationarticle() ?></td>
          <td><?php echo $rupture->getStockreel() ?></td>
          <td><?php echo $rupture->getMinStock() ?></td>
          <td><?php echo $rupture->getStocktheorique() ?></td>
          <td><?php echo $rupture->getGestionStock() ?></td>
          <td><?php echo $rupture->getBloque() ?></td>
          <td><?php echo $rupture->Rayon()->getLibellerayon() ?></td>
        </tr>
        <?php
           }
        ?>
    </table>

  2. #2
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 79
    Par défaut
    Hello,

    Rien ne s'affiche ou tu as une erreur ?

    Si il y a une erreur, essaie getRayon() à la place de Rayon()

  3. #3
    darthmower
    Invité(e)
    Par défaut
    Salut,

    Dans ta requête c'est normal le : "->leftJoin('a.Rayon r')" , je pense pas qu'il faille "a." avant "Rayon" .

    Grispou

  4. #4
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 23
    Par défaut
    bonjour darthmower
    Dans ta requête c'est normal le : "->leftJoin('a.Rayon r')" , je pense pas qu'il faille "a." avant "Rayon"
    si je la remplace par ('Rayon r'), j'aurai un message d'erreur

  5. #5
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 23
    Par défaut
    bonjour PinGu-

    Hello,

    Rien ne s'affiche ou tu as une erreur ?

    Si il y a une erreur, essaie getRayon() à la place de Rayon()
    je n'ai pas eu une erreur, mais j'ai eu comme affichage le header de la balise <table>, mais le contenu de <tbody>

  6. #6
    Invité
    Invité(e)
    Par défaut
    J'aurais plutôt tendance à écrire ça comme requête :
    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
     
    $q=Doctrine_Query::create()
    ->select('a.codearticle,
    a.ref,
    a.designationarticle,
    a.designationlongarticle,
    a.stockreel,
    a.minStock,
    a.stocktheorique,
    a.gestionstock,
    a.bloque,
    r.libellerayon')
    ->from('Articles a')
    ->leftJoin('a.Rayon r')
    ->where('a.GestionStock=?','1')
    ->andWhere('a.Stockreel <= a.MinStock');
    De plus, ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    return $q->execute(array(), Doctrine_Core::HYDRATE_ARRAY);
    me semble incompatible avec cette portion de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <td><?php echo $rupture->getCodeArticle() ?></td>
    <td><?php echo $rupture->getREF() ?></td>
    <td><?php echo $rupture->getDesignationarticle() ?></td>
    <td><?php echo $rupture->getStockreel() ?></td>
    <td><?php echo $rupture->getMinStock() ?></td>
    <td><?php echo $rupture->getStocktheorique() ?></td>
    <td><?php echo $rupture->getGestionStock() ?></td>
    <td><?php echo $rupture->getBloque() ?></td>
    <td><?php echo $rupture->Rayon()->getLibellerayon() ?></td>

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

Discussions similaires

  1. [1.x] Récupérer les données d'une jointure
    Par d10g3n dans le forum Symfony
    Réponses: 8
    Dernier message: 20/02/2010, 23h58
  2. récupérer les données d'une fenetre
    Par snoopo dans le forum Interfaces Graphiques en Java
    Réponses: 5
    Dernier message: 23/06/2006, 17h23
  3. Réponses: 15
    Dernier message: 20/06/2006, 10h29
  4. Récupérer les données après une recherche
    Par cdumas dans le forum Access
    Réponses: 7
    Dernier message: 04/05/2006, 12h09
  5. Récupérer les données d'une iframe
    Par juli1 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 09/02/2005, 22h53

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