Non il le prend pas ... avec doSelectJoinAmis, doSelectJoinXXXAmis,
doSelectJoin, rien n'y fait ...

On 2 juil, 16:52, nautilebleu <[EMAIL PROTECTED]> wrote:
> Ouups désolé, pour les $.
>
> essaie de faire $this->amis = XXXUserPeer::doSelectJoinAmis($c);
>
> Nautile
>
> On 2 juil, 16:47, LaYa <[EMAIL PROTECTED]> wrote:
>
>
>
> > Ca ne fonctionne pas du tout ... il manquait des $ mais c'est pas le
> > probleme ... Je pense que ca viens du fait que ma requete fasse une
> > jointure entre XXXAmis et XXXUser ... et je sais pas comment mettre un
> > addJoin la dedans ...
>
> > On 2 juil, 16:35, nautilebleu <[EMAIL PROTECTED]> wrote:> $c = new 
> > Criteria();
> > > $c->add(XXXAmisPeer::CONFIRMED, '1');
> > > $criterion1 = $c->getNewCriterion(XXXAmisPeer::LOGIN1, $id_user) ;
> > > $criterion2 = $c->getNewCriterion (XXXAmisPeer::LOGIN2, $id_user));
> > > $criterion1->addOr(criterion2);
> > > $c->addAnd(criterion2) ;
>
> > > $criterion3 = $c->getNewCriterion(XXXUserPeer::ID,
> > > XXXAmisPeer::LOGIN1);
> > > $criterion4 = $c->getNewCriterion (XXXUserPeer::ID,
> > > XXXAmisPeer::LOGIN2));
> > > $criterio3->addOr(criterion4);
> > > $c->addAnd(criterion1) ;
>
> > > $c->add(XXXUserPeer::ID, $id_user, Criteria::NOT_EQUAL);
>
> > > $this->amis = XXXUserPeer::doSelect($c);
>
> > > On 2 juil, 16:15, LaYa <[EMAIL PROTECTED]> wrote:
>
> > > > Merci de me filer un coup de main mais j'suis novice en symfony.
> > > > Concretement ca aurait quelle tete ? Parce que j'arrive pas tellement
> > > > a comprendre là ...
>
> > > > On 2 juil, 16:09, nautilebleu <[EMAIL PROTECTED]> wrote:> Il faut faut 
> > > > faire 4 criterions, cumuler 1 et 2 ensembles, cumuler 3
> > > > > et 4 ensembles,
> > > > > puis ajouter les deux cumuler au criteria
>
> > > > > Nautile
>
> > > > > On 2 juil, 15:57, LaYa <[EMAIL PROTECTED]> wrote:
>
> > > > > > Bonjour à tous,
>
> > > > > > Donc voila comme l'indique le titre j'ai un petit problème avec une
> > > > > > requete SQL récalcitrante :
>
> > > > > > J'ai 2 tables xxx_user et xxx_amis qui contiennent respectivement 
> > > > > > les
> > > > > > informations des utilisateurs (login, nom, prenom, ...) et les
> > > > > > 'amitiés' entre les differents utilisateurs (login1=>id utilisateur 
> > > > > > n
> > > > > > °1, login2=>id utilisateur n°2, confirmed=>1 si la personne qui a 
> > > > > > été
> > > > > > ajouté a confirmé cet ajout).
>
> > > > > > J'essai donc d'afficher les differents 'amis' d'un utilisateur 
> > > > > > donné.
>
> > > > > > En SQL pas de probleme elle fonctionne ( j'ai pris un id utilisateur
> > > > > > pour l'exemple '5' ):
>
> > > > > > SELECT us.login FROM xxx_amis ami, xxx_user us
> > > > > > WHERE ami.confirmed = '1'
> > > > > > AND (ami.login1 = '5' OR ami.login2 = '5')
> > > > > > AND (us.id = login1 OR us.id = login2)
> > > > > > AND us.id != '5'
>
> > > > > > avec symfony c'est une autre paire de manches :
>
> > > > > >    public function executeXXXAmis()
> > > > > >    {
> > > > > >         $id_user = $this->getUser()->getAttribute('id');
>
> > > > > >         $c = new Criteria();
> > > > > >         $c->add(XXXAmisPeer::CONFIRMED, '1');
> > > > > >         $criterion1 = $c->getNewCriterion(XXXAmisPeer::LOGIN1, 
> > > > > > $id_user)->addOr($c->getNewCriterion (XXXAmisPeer::LOGIN2, 
> > > > > > $id_user));
>
> > > > > >         $c->add($criterion1);
> > > > > >         $criterion2 = $c->getNewCriterion(XXXUserPeer::ID,
> > > > > > XXXAmisPeer::LOGIN1)->addOr($c->getNewCriterion (XXXUserPeer::ID,
> > > > > > XXXAmisPeer::LOGIN2));
> > > > > >         $c->addAnd($criterion2);
> > > > > >         $c->add(XXXUserPeer::ID, $id_user, Criteria::NOT_EQUAL);
>
> > > > > >         $this->amis = XXXUserPeer::doSelect($c);
> > > > > >    }
>
> > > > > > Seul probleme la deuxieme partie de la requete n'est pas prise en
> > > > > > compte ... le $criterion2 ... et je n'arrive pas a comprendre
> > > > > > pourquoi ... quelqu'un aurait une idée ?
>
> > > > > > Merci d'avance !- Masquer le texte des messages précédents -
>
> > > > > - Afficher le texte des messages précédents -- Masquer le texte des 
> > > > > messages précédents -
>
> > > - Afficher le texte des messages précédents -- Masquer le texte des 
> > > messages précédents -
>
> - Afficher le texte des messages précédents -


--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" 
de Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [EMAIL PROTECTED]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à