Première chose : activer l'affichage des erreurs PDO ...
Cela t'évitera d'avoir une bête erreur PHP inexploitable...
Deuxième chose : éviter de nommer une colonne DATE qui est un mot clé SQL et peux créer des ambiguïtés...
Troisième chose, et sûrement explication de l'erreur : tu utilises SUM() sans clause GROUP BY ... Pas glop, faut revoir ton cours SQL sur les regroupements.
Parce que là on ne sait pas si elle vient de PHP ou de SQL (je dirais la première, que $bdd n'est pas défini/vaut NULL)
EDIT : enfin, comme le premier message a été édité entre temps, je suppose qu'initialement, question de portée liée à l'usage d'une fonction, il y avait une Call to a member function prepare() on null que tu as "résolu" par ce global $bdd et que maintenant ça n'a plus rien à voir (simple erreur SQL ?)
> je ne sais pas si c'est pour ça que je ne vois pas les erreurs
Il faut voir comment tout est vraiment goupillé mais avec le code ci-dessus elles devraient l'être.
Idem : le screen montre une colonne nommée date mais le code, dateclic donc on ne sait plus où on en est ...
Pour l'erreur SQL je corrigerai ainsi (le GROUP BY) :
$recbanni = $bdd->prepare("
SELECT
SUM( nbclic ) AS clic_total,
DAY( dateclic ) AS datej
FROM rc_enrclic
WHERE
$typban = :id
AND YEAR( dateclic) = :datan
AND MONTH( dateclic) = :datmoi
GROUP BY DAY( dateclic )
ORDER BY DAY( dateclic ) ASC"
);
j'ai trouvé pourquoi ça ne fonctionné pas...je testé la fonction directement dans le répertoire sans passer dans un include, donc forcément il y a avait pas de bdd pffffff
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli