La partie suivante est incorrecte :
$reponse_func['count(.$nom_champ.)']
Les points ne jouent aucune rôle ici et figure comme simples caractères dans votre chaîne donc sont de trop par rapport au résultat attendu. De plus, la variable $nom_champ ne sera pas interpolée (remplacée par sa valeur) si elle figure dans une chaîne délimitée par des single quotes : il en faudrait des doubles.
Avant de dire que ça ne fonctionne pas il serait plus intéressant d'en connaître la raison :
- Développez avec error_reporting à E_ALL, au moins, un index de tableau inexistant étant reporté par une erreur de type notice (ce qui est votre cas)
- Ne placez pas d'arobase devant vos requêtes : l'affichage ou non des erreurs étant normalement effectué suivant son environnement (développement vs production, où dans le second cas elles ne devraient plus du tout être affichées). Contrôlez plutôt les valeurs de retour de vos fonctions à la place !
- Utilisez or die(mysql_error()) pour vérifier et obtenir la raison d'une erreur au niveau du SGBD (principalement pour le développement)
Partager