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 :

liste déroulante pour récuperer valeur clé étrangere


Sujet :

Zend_Db PHP

  1. #1
    Candidat au Club
    Inscrit en
    Avril 2012
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Avril 2012
    Messages : 3
    Points : 4
    Points
    4
    Par défaut liste déroulante pour récuperer valeur clé étrangere
    Bonjour à tous,

    Voilà, j'ai une table utlisateur qui contient comme champs l'id(clé primaire) , le mail , et fk_logiciel et fk_societe qui sont deux clés étrangers qui pointent sur l'id des tables Société et Logiciel.

    Table Societe: id(clé primaire) , nomsociete
    Table Logiciel: id(clé primaire) , nomlogiciel

    et je veux pouvoir modifier, ajouter les logiciels et les sociétés dans la table utilisateur en utilisant une liste déroulante qui récupère la valeur de nomsociete et nomlogiciel , mais je ne vois pas comment faire sad

    le code de mon model

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    class Application_Model_DbTable_Utilisateur extends Zend_Db_Table_Abstract
    {
        protected $_name = 'utilisateur';
     
     protected $_referenceMap    = array(
            'Soci' => array(
                'columns'           => 'PK_Nom_societe',
                'refTableClass'     => 'societe',
                'refColumns'        => 'ID_societe'
            ),
            'Logi' => array(
                'columns'           => 'PK_Logiciel',
                'refTableClass'     => 'logiciel',
                'refColumns'        => 'ID_Logiciel'
            )
     );
     
     
        public function obtenirutilisateur($id)
        {
            $id = (int)$id;
            $row = $this->fetchRow('ID_utilisateur= ' . $id);
            if (!$row) {
                throw new Exception("Impossible de trouver l'utilisateur $id");
            }
            return $row->toArray();
        }
     
        public function ajouterutilisateur($Mail,$logiciel, $societe )
        {
            $data = array(
                'Mail' => $Mail,
     
                // code pour ajouter logiciel et société ???
     
            );
            $this->insert($data);
        }
     
        public function modifierutilisateur($id, $Mail,$logiciel, $societe)
        {
            $data = array(
                ''Mail' => $Mail,
                 // code pour modifier logiciel et société ???.
     
            );
            $this->update($data, 'ID_utilisateur = '. (int)$id);
        }
     
        public function supprimerutilisateur($id)
        {
            $this->delete('ID_utilisateur =' . (int)$id);
        }
    }
    Merci d'avance

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Points : 1 101
    Points
    1 101
    Par défaut
    D'aprés ce que j'ai compris tu dois crée 2 select une societe et une logiciel rempli par leur valeur depuis la base de donné.
    A la recherche d'un film : http://chercher-un-film.com

  3. #3
    Candidat au Club
    Inscrit en
    Avril 2012
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Avril 2012
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par m4riachi Voir le message
    D'aprés ce que j'ai compris tu dois crée 2 select une societe et une logiciel rempli par leur valeur depuis la base de donné.
    Exactement , tu n'auras pas une solution ou un tuto à me proposer pour que j'avance un peu. Merci

  4. #4
    Membre éprouvé
    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 : 38
    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
    Points : 1 297
    Points
    1 297
    Par défaut
    Bonjour,
    Fais nous voir ton formulaire, ça sera plus utile je pense.

    En suite, j'espère que tu as bien créé les modèles respectif pour société et logiciel.

    Dans ton formulaire pour créer un select tu peux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $selectSociete = $this->createElement('select', 'PK_Nom_societe');
    $selectSociete->setMultioptions(tableau associatif contenant les valeurs);
    Et bien sur si tu as tes modèles déjà existant pour société par exemple tu peux faire pour récupérer le tableau qui va bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $societeTable = new Application_Model_DbTable_Societe();
    $result = $societeTable->fetchAll();
    $tabSociete = array();
    foreach($result as $societe) {
        $tabSociete[$societe->ID_societe] = $societe->name;
    }
    Voilà, à toi d'adapter maintenant.

Discussions similaires

  1. Réponses: 3
    Dernier message: 23/06/2014, 10h21
  2. recuperer valeur liste déroulante pour un mail
    Par hardcoregamer dans le forum Langage
    Réponses: 1
    Dernier message: 16/06/2010, 13h59
  3. [AC-2000] Récupérer la valeur d’une liste déroulante pour filtrer une requête SQL
    Par Gremandine dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 18/03/2010, 15h43
  4. Réponses: 5
    Dernier message: 18/11/2009, 11h25
  5. Réponses: 2
    Dernier message: 01/09/2006, 00h02

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