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

Symfony PHP Discussion :

Symfony2 requete dql [2.x]


Sujet :

Symfony PHP

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 34
    Points : 15
    Points
    15
    Par défaut Symfony2 requete dql
    bonjour ,

    je voudrais récupérer tous les créneau entre une date et une autre ( du mois entier )

    voici ma requête

    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
    public function getCreneauAction(Request $request, $now, $nbjours, $mois, $annee) {
            $em = $this->getDoctrine()->getManager();
     
         $query = $em->createQuery("select periode.intitule  "
                    . "from CupcakeFactory\siteBundle\Entity\Periode periode "
                    . "join CupcakeFactory\siteBundle\Entity\Livraison livraison  "
                    . "where livraison.Periode=periode.id "
                    . "and livraison.dateReservee between '=?1' and '=?2-=?3-=?4' ");
     
     
            $query->setParameter(1, $now);
            $query->setParameter(2,$nbjours );        
            $query->setParameter(3,$mois );
            $query->setParameter(4,$annee );
     
            $result = $query->getResult();
            return new Jsonresponse($result);
        }
    lorsque je teste cette methode en dur : .../nomcreneau/21-09-2014/31/09/2014

    je reçois l'erreur suivante :
    Invalid parameter number: number of bound variables does not match number of tokens
    quelqu'un pourrait il m'eclairer?

    merci d'avance

  2. #2
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    yoooooooooo mannnnn rastafariiiiiiiiiiiii,


    essais ta requête en SQL pure dans mySql pour tester

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 34
    Points : 15
    Points
    15
    Par défaut
    voila

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select intitule from periode join livraison where periode.id=periode_id and dateReservee between '2014-09-21' and '2014-09-30'
    et fonctionne

    je ne comprends donc pas pourquoi ma requete dql ne marche pas

  4. #4
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    yooooo man



    pourquoi il y a des egals partout ?

    et comme ça ?

  5. #5
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 34
    Points : 15
    Points
    15
    Par défaut
    je n'ai pas le choix pour les "=" c est une requete parametree

    je tente ce que tu m'as note et te dis

  6. #6
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 34
    Points : 15
    Points
    15
    Par défaut
    je reçois toujours la meme erreur

  7. #7
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    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
    public function getCreneauAction(Request $request, $now, $nbjours, $mois, $annee) {
            $em = $this->getDoctrine()->getManager();
     
         $query = $em->createQuery("SELECT periode.intitule  "
                    . "FROM CupcakeFactory\siteBundle\Entity\Periode periode "
                    . "JOIN CupcakeFactory\siteBundle\Entity\Livraison livraison  "
                    . "WHEREl ivraison.Periode=periode.id "
                    . "AND livraison.dateReservee BETWEEN ?1 AND ?2 ");
     
     
            $query->setParameter(1, $now);
            $query->setParameter(2, $nbjours.'-'.$mois.'-'.$annee );        
     
            $result = $query->getResult();
            return new Jsonresponse($result);
        }

  8. #8
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 34
    Points : 15
    Points
    15
    Par défaut
    bonjour,

    j'avais fait la meme chose mais ma concatenation etait mal faite

    un grand merci

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

Discussions similaires

  1. [2.x] Requete dql. A l'aide
    Par ozack dans le forum Symfony
    Réponses: 3
    Dernier message: 30/06/2013, 10h56
  2. Requetê DQL : Expected end of string
    Par jejeman dans le forum Doctrine2
    Réponses: 2
    Dernier message: 18/01/2013, 16h35
  3. Requete DQL avec EXIST et NOT EXISTS
    Par davidbouv dans le forum Doctrine2
    Réponses: 5
    Dernier message: 16/01/2012, 17h55
  4. [Doctrine] Optimisation requete DQL
    Par erictomcat dans le forum ORM
    Réponses: 11
    Dernier message: 13/05/2011, 11h42
  5. [Doctrine] passer un parametre à une requete dql
    Par bedomon dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 30/09/2010, 17h39

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