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

Zend_Db PHP Discussion :

[Zend_db_table] Deux requête imbriquées


Sujet :

Zend_Db PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2008
    Messages : 160
    Par défaut [Zend_db_table] Deux requête imbriquées
    Bonjour,

    J'ai un soucis de débutant avec ZF.
    J'aimerais lister toutes les sculptures dans ma vue, et afficher les images correspondantes à ces dernières.

    Voici mon contrôleur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
        function indexAction()
        {
            $this->view->title = "Sculptures";
    		$this->view->locaOption = "Index";
    		$produits = new Produits();
    		$this->view->produits = $produits->fetchAll();
    		$pics = new Pics();
    		$this->view->pics= $pics->fetchAll();
        }
    Mon Index:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    			<?php foreach($this->produits as $produit) : ?>
    				<div class="product">
    					<?php echo $produit->description_courte_produits;?><br />
    					<?php if (isset($produit->pics1_produits)){ 
    						 foreach($this->pics as $pics) :
    							echo "<img src=".$this->baseUrl."public/images/produits/small/".$pics->filename_pics."' border=0>";
    						 endforeach; 
    					 } ?>
    				</div>
    			<?php endforeach; ?>
    Ma classe abstraite pics :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php
     
    class pics extends Zend_Db_Table
    {
        protected $_name = 'pics';
    }
    Je n'arrive pas à utiliser la clause Where dans ma vue sans pour autant être obliger de passer par une requête écrite en dur...

    Est-ce possible? Par quel moyen doit-je procéder?

    Merci d'avance.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2008
    Messages : 160
    Par défaut
    Je me suis peut-être mal exprimé

    Comment faire deux requêtes imbriquées?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Select images_id from album
            Select images from baseImage where images = images_id_de_la_précédente_requête.
    Je ne comprend pas comment retourner les bon enregistrements.


    Merci

  3. #3
    Membre éclairé
    Profil pro
    Chef d’entreprise
    Inscrit en
    Mars 2002
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef d’entreprise

    Informations forums :
    Inscription : Mars 2002
    Messages : 212
    Par défaut
    Si j'ai bien compris, ta requête devrait corrsepondre à ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select images from baseImage where image_id in (Select image_id from album);
    Tu devrais donc affecter ces instructions sql à une variable et écrire ce code pour exécuter ta requête.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $sql= 'Select images from baseImage where image_id in (Select image_id from album);';
    $db = Zend_Db_Table::getDefaultAdapter();
    $statement = $db->query($sql);
    $statement->execute;

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2008
    Messages : 160
    Par défaut
    Merci, mais j'aurais préférer utiliser les classes abstraites. J'ai modifié la base pour faire en sorte d'utiliser qu'une seul requête. Plus rapide et moins prise de tête

    Merci quand même
    @plush

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

Discussions similaires

  1. Imbriquer deux requêtes SQL
    Par PREUX dans le forum Langage SQL
    Réponses: 1
    Dernier message: 26/11/2013, 19h06
  2. Deux requêtes FOR imbriquées
    Par prodit96 dans le forum PL/SQL
    Réponses: 2
    Dernier message: 08/10/2012, 01h02
  3. Requête imbriquée avec deux "rangements par ordre de"
    Par reivinternet dans le forum PostgreSQL
    Réponses: 17
    Dernier message: 09/12/2010, 10h34
  4. [AC-2007] Créer une requête imbriquant deux INNER JOIN
    Par Olivier JC dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 09/09/2009, 23h23
  5. Deux Requêtes imbriquées
    Par Telecaster dans le forum Requêtes
    Réponses: 6
    Dernier message: 30/07/2008, 23h57

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