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 Framework PHP Discussion :

comment transmettre une variable dans un modèle ?


Sujet :

Zend Framework PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2008
    Messages
    1 222
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 1 222
    Par défaut comment transmettre une variable dans un modèle ?
    Bonjour a tous, je suis entraînt de crée des images a visualiser via une base de donnnée, j'amerais transmettre une information pour connâitre l'élément courant de l'image et de l'utiliser pour faire une pagination, par contre je ne sais pas comment m'y prendre, faut 'il dans la class IndexController crée un attribut ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    class IndexController extends Zend_Controller_Action
    {
         public $image_en_court= 1 ; //on commence la requete pour récup les images à 1
    public fonction init()
    {
    ......
    }
     
    }
    ou faut mettre cette attribut dans la methode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        public function init()
        {
            $this->view->jQuery()->enable();
         public  $image_en_court= 1 ; //on commence la requete pour récup les images à 1
        }
    une fois que j'ai cette variable, comment je fais pour l'envoyer à traves le modèle ou qu'il faut l'envoyer directement sur la vue?

    voici ce que je pensais comme enchaînement

    - récuperer $image_en_cour
    - récupérer le nombre maximum d'image a afficher
    -determiner un nombre par page (totalimage/ceil)
    - on fait une requête qui commence par $image_en_cour
    - on fait une boucle avec le nombre par page et j'incrémente $ image_en_cour a chaque fois que l'image a été récupérer



    voici la methode qui appelle les images
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
            $image = new Application_Model_DbTable_Image();
            $this->view->image=images->fetchAll(); //comment récupérer le nombre total d'élément peut être que fechAll() n'est pas fait pour cela?
    merci d'avance de vos réponse, et de vos conseils

  2. #2
    Membre Expert
    Avatar de 5h4rk
    Homme Profil pro
    CTO at TabMo
    Inscrit en
    Février 2011
    Messages
    813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : CTO at TabMo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 813
    Par défaut
    Je n'ai absolument rien compris à ton message du moins le début, du coup très dur de comprendre la suite.
    Je t'invite à te relire et formuler correctement tes besoins

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2008
    Messages
    1 222
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 1 222
    Par défaut
    je vais essayer de reformuler la demande

    j'ai une base de donnée avec le nom des images et leur miniature

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    TABLE IMAGE
    -------------------
    id_image    | id_appartient_a       | url_image
    1             |  2                    |  b1
    2             |  2                    |  b2
    3             | 2                     |  b3
    4             | 44                   |  b4
    5             |44                    |  b5
    mon but est de faire une requête dans cette table avec le modèle Image

    - je souhaite connaître combien au total il y a de proprietaire
    - je recherche dans cette table tous les image qui appartient à "2"
    maintenant si je fait une fetchAll(), je vais récupérer les 3 images (b1,b2,b2)
    +celle d'un autre proprietaire (b4,b5)

    avec mon controller j'ai récupérer toutes les images
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
        public function indexAction()
        {
            Application_Model_DbTable_image();
            $this->view->image=$image->fetchAll();
     
        }
    dans ma vu j'affiche donc le résultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
        <?php foreach ($this->images as $image) : ?>
            <tr>
                <td><?php echo $this->escape($image->id_image); ?></td>
                <td><?php echo $this->escape($car->prporietaire); ?></td>
                <td><?php echo $this->escape($car->image miniature); ?></td>  
            </tr>
        <?php endforeach ?>
    La vu va m'afficher tous les résultats en même temps,ce que je voudrais c'est qu'il m'affiche d'abord par groupe d'utilisateur

    -toutes les images qui appartiennent à 2
    -puis celle de 44
    etc...

    lorsque qu'on passera aux prochaine proporietaire on augementera une variable à 1, cette variable servira à determiner la pagination, on veut visualler par exemple 5 propriétaires par pages.

    Peut être que la bonne method n'est pas de chercher toutes les données de cette table , de cherchercher avec une requete juste le proprietaire numéro 2 puis ensuite le suivant mais si je fais cela, il faut une boucle de requêtes

  4. #4
    Membre Expert
    Avatar de 5h4rk
    Homme Profil pro
    CTO at TabMo
    Inscrit en
    Février 2011
    Messages
    813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : CTO at TabMo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 813
    Par défaut
    Donc j'ai bien compris plus ou moins ton problème, maintenant j'aimerai savoir comment tu veux que le résultat visuel soit.

    Une petit screen ou autre serait bien.
    Car la de ce que je comprends tu veux juste que ça soit afficher par ordre à qui ça appartient, dans ce cas là un order devrait te suffire

  5. #5
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2008
    Messages
    1 222
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 1 222
    Par défaut
    Pour le moment comme je débute je souhaite au moins que cela soit afficher chronologiquement l'id "appartient a".

    voici un petit croquis c'est plus simple de comprendre, d'ailleur c'est ce que je dois avoir à l'image.
    cela ressemblerai plustôt ceci en html avec le premier résutat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <div>
      <h1>proporiot $appartient_a</h1>
      <ul>
          <li>image$i</li> //boucle for répéter 3 fois
     </ul>
    </div>


    j'ai mis id_appartient_a 44 au pif mais théoriquement si l'on efface pas un tulpe de cette colonne on a normalement un nombre qui ne cesse d'augmenter avec un pas de 1.

    pour les images normalement je sais d'avance qu'il y aura toujours 3 images, si j'ai mis un "b" au début c'est paceque c'est pour utiliser les regex, normalement je recherche seulement les images qui commence par "b" pour les affichées.

  6. #6
    Membre Expert
    Avatar de 5h4rk
    Homme Profil pro
    CTO at TabMo
    Inscrit en
    Février 2011
    Messages
    813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : CTO at TabMo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 813
    Par défaut
    donc tu rajouter la contrainte order avec le champs sur lequel tu veux que ça soit trié et dans ton foreach tu fais un test et si c'est un nouveau proprio (différent du précédent) tu fais quelque chose

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/08/2006, 09h23
  2. Réponses: 1
    Dernier message: 19/05/2006, 19h57
  3. Ou et comment insérer une variable dans la requete?
    Par forzaxelah dans le forum Bases de données
    Réponses: 2
    Dernier message: 11/05/2006, 11h33
  4. Comment completer une variable dans une PROC
    Par Le Basque dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 20/09/2004, 17h18
  5. comment recuperer une variable dans flash
    Par krépuscul dans le forum Flash
    Réponses: 30
    Dernier message: 16/10/2003, 09h40

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