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

MkFramework Discussion :

retour de l'objet le plus recent


Sujet :

MkFramework

  1. #1
    Membre habitué
    Homme Profil pro
    Responsable SAV
    Inscrit en
    Mars 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable SAV

    Informations forums :
    Inscription : Mars 2010
    Messages : 122
    Points : 128
    Points
    128
    Par défaut retour de l'objet le plus recent
    Bonjour,

    J'ai dans une table d'historique, j'aimerai récupérer la ligne la plus récente. Saurez-vous comment m'y prendre.

    côté modèle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public function getHistRecentByMfp($iMfp_id)
    	{
        return $this->execute('SELECT appartenir_id, mfp_id, societe_id, max(date) AS date FROM '
        .$this->sTable
        .' WHERE mfp_id =?', $iMfp_id) ;
      }
    et côté contrôleur avec un print_r, j'ai ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $oMk_appartenir = model_mk_appartenir::getInstance()->getHistRecentByMfp($oMk_mfp->mfp_id) ; // plus recent
    print_r($oMk_appartenir) ; exit() ;
     
    // objet  retourné
    PDOStatement Object ( [queryString] => SELECT appartenir_id, mfp_id, societe_id, max(date) AS date FROM mk_appartenir WHERE mfp_id =? )
    et pour finir directement sur la table mysql
    pour une machine donnée, j'ai bien un seul résultat retourné.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT appartenir_id, mfp_id, societe_id, max(date) AS date FROM mk_appartenir WHERE mfp_id =536 ;
    cordialement

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    33
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 33
    Points : 25
    Points
    25
    Par défaut
    Bonjour,
    Je ne comprends pas bien le problème si le résultat est correct...
    Alain.

  3. #3
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Il semble y avoir une erreur dans la couche modèle c'est findOne qu'il faut executer et non execute
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public function getHistRecentByMfp($iMfp_id)
    	{
        return $this->findOne('SELECT appartenir_id, mfp_id, societe_id, max(date) AS date FROM '
        .$this->sTable
        .' WHERE mfp_id =?', $iMfp_id) ;
      }
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  4. #4
    Membre habitué
    Homme Profil pro
    Responsable SAV
    Inscrit en
    Mars 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable SAV

    Informations forums :
    Inscription : Mars 2010
    Messages : 122
    Points : 128
    Points
    128
    Par défaut
    Bonjour,
    Merci beaucoup, cela fonctionne correctement.
    Par contre, je pensais que findOne et findMany présupposaient que celui qui les emploie sait à l'avance, le nombre de résultats susceptibles d'être retourné et que execute était générique, exemple pour les transactions, les update personnalisées etc...

    Encore mille mercis, c'est un grand plaisir d'utiliser ce MKFramework.

  5. #5
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    FindOne retourne un seul enregistrement (peut importe le nombre de résultats)
    FindMany retour le tableau d'enregistrements retournés
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

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

Discussions similaires

  1. [HQL] recuperer l'objet avec la date la plus recente
    Par snopims dans le forum Hibernate
    Réponses: 6
    Dernier message: 09/01/2009, 10h32
  2. Importation des fichiers les plus recents
    Par avantoux dans le forum VBA Access
    Réponses: 8
    Dernier message: 28/09/2007, 13h50
  3. [requete] recupérer enregistrement plus recent
    Par michaelbob dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 06/02/2006, 17h45
  4. Réponses: 2
    Dernier message: 28/11/2005, 07h24
  5. retour tableau d'objets par service web axis jboss
    Par TrollMaster dans le forum XML/XSL et SOAP
    Réponses: 6
    Dernier message: 27/11/2005, 21h45

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