Bonjour,

Dans le cadre d'un stage, je développe actuellement un indicateur qui doit compter le nombre de connexions effectuées par chaque équipe. Toutes les connexions sont enregistrées dans une table "tracesforms" qui comporte l'identifiant d'un membre du personnel.

J'effectue une première requête qui me permet de rattacher chaque identifiant à une équipe, puis effectue un décompte selon certains paramètres (equipe et cd_forms).

Voici le code (mis en forme pour mieux comprendre) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
$requete4 = $bdd -> query(
"SELECT COUNT(*) AS resultat4 
FROM (
<div style="margin-left:40px">SELECT equipe, cd_forms 
FROM vf_equipe, tracesforms 
WHERE cd_usr=controleur 
UNION
(SELECT famille_equipe, cd_forms
FROM vf_famille_equipe, tracesforms 
WHERE cd_usr=gestionnaire)) AS test</div>WHERE equipe='".$requete3['equipe']."'
AND cd_forms='".$numeroEcranChoisi."'");
$resultat4 = $requete4 -> fetch();
L'exécution me donne l'erreur suivante pour la première ligne :
Fatal error: Cannot use object of type PDOStatement as array in C:\Program Files (x86)\wamp\www\CODE_INDICATEUR_RATP\indicateur\vue_ecran.php on line 73
$bdd est un new PDO(avec connexion à la base)

J'ai déjà utilisé cette méthode plusieurs fois et fonctionne parfaitement mais je ne comprends pas du tout cette erreur là. Est-ce liée au fait que je fasse un SELECT... FROM (SELECT...) ? Comment puis-je faire autrement ? Étrangement, lorsque je teste cette requête directement sur ma BDD (via phpMyAdmin), j'obtiens bien le résultat que j'attends.

Merci de m'aider !