Recupération doonées bdd et traitement (comptage)
Résolu
TUCS
-
TUCS -
TUCS -
Bonjour,
Je souhaite faire une discussion pour le personnel d'une association.
J'ai réussi à faire une bonne partie mais je bloque pour la notification des nouveaux messages.
J'ai un cadre où il est écrit "Boite de réception", j'aimerais dans ce cadre intégrer un rond avec le nombre de discussion avec des nouveaux messages que j'ai en attente (non lu).
Dans ma bdd j'ai l'ID de l'auteur et l'ID de destinataire.
J'aurais besoin de compter le nombre d'ID auteur différents qui on envoyé des messages à mon ID (ID destinataire).
Ma question est-ce qu'une requete sql, un script peut faire ça?
Une idée, une piste?
Bonne journée, prenez soin de vous!
Je souhaite faire une discussion pour le personnel d'une association.
J'ai réussi à faire une bonne partie mais je bloque pour la notification des nouveaux messages.
J'ai un cadre où il est écrit "Boite de réception", j'aimerais dans ce cadre intégrer un rond avec le nombre de discussion avec des nouveaux messages que j'ai en attente (non lu).
Dans ma bdd j'ai l'ID de l'auteur et l'ID de destinataire.
J'aurais besoin de compter le nombre d'ID auteur différents qui on envoyé des messages à mon ID (ID destinataire).
Ma question est-ce qu'une requete sql, un script peut faire ça?
Une idée, une piste?
Bonne journée, prenez soin de vous!
Configuration: Windows / Firefox 75.0
A voir également:
- Recupération doonées bdd et traitement (comptage)
- Récupération de déchets - Guide
- Reconsidérer le traitement de vos informations à des fins publicitaires - Accueil - Réseaux sociaux
- Traitement de texte gratuit - Guide
- Ce traitement de texte gratuit et léger est parfait pour remplacer Word, même sur un vieux PC - Guide
- Convertisseur récupération de texte - Guide
3 réponses
Bonjour,
Oui
Une requête SQL utilisant un COUNT par exemple.
Par contre, pour n'avoir que les non-lus, tu vas devoir gérer avec un champ supplémentaire dans ta table que tu pourras passer à "1" lorsque le message est lu par le destinataire.
Ma question est-ce qu'une requete sql, un script peut faire ça?
Oui
Une idée, une piste?
Une requête SQL utilisant un COUNT par exemple.
Par contre, pour n'avoir que les non-lus, tu vas devoir gérer avec un champ supplémentaire dans ta table que tu pourras passer à "1" lorsque le message est lu par le destinataire.
J'ai activé les erreurs
Dans ici je dois utiliser fetchall, c'est juste?
Je comprends pas... Moi je veux un chiffre en retour (x messages non-lu) et ici on parler de retourner un array
Dans ici je dois utiliser fetchall, c'est juste?
Je comprends pas... Moi je veux un chiffre en retour (x messages non-lu) et ici on parler de retourner un array
Tu as également l'exemple de requête préparée qui se trouve dans le lien ?
Au lieu d'utiliser le ->query qui n'est pas sécurisé... utilises le prepare et le execute.
Le tout, comme dans l'exemple, dans un bloc try/catch.
Au lieu d'utiliser le ->query qui n'est pas sécurisé... utilises le prepare et le execute.
Le tout, comme dans l'exemple, dans un bloc try/catch.
//préparation de la requête et des variables $sql = 'SELECT COUNT(ID) as NB FROM forum_membres WHERE genre="987654321" AND correspondant= :correspondant '; $datas = array(':correspondant '=>$B_ID); //Execution de la requete try{ $requete = $bdd -> prepare($sql) ; $requete->execute($datas) ; $res = $requete->fetch(); }catch(Exception $e){ // en cas d'erreur : echo " Erreur ! ".$e->getMessage(); echo " Les datas : " ; print_r($datas); } $NB = !empty($res['NB']) ? $res['NB'] : 0;
je veux que ça compte le nombre d'ID différent se trouve dans la colonne ID (la colonne ID étant l'envoyeur du message) et ayant la correspond avec mon id.
J'ai besoin que la requete me retourne un nombre, x messages non-lu. Je n'ai pas besoin des messages donc pas besoin de me retourner des lignes de la bdd
J'ai du mal...
Ah ça par contre je ne savais pas, je le ferais dorenavant
J'ai besoin que la requete me retourne un nombre, x messages non-lu. Je n'ai pas besoin des messages donc pas besoin de me retourner des lignes de la bdd
J'ai du mal...
Ah ça par contre je ne savais pas, je le ferais dorenavant
Jordane, cela m'écrit le nombre de messages non-lu... J'aimerais le nombre auteur différent avec des messages non-lu.
C'est une autre requete ou il faut juste mettre une précision dans la requete?
Ici tu m'écris 2 messages, ça écrire deux. Mon but c'est que peut importe le nbre de message que tu m'as envoyé ça met 1 car une personne à des messages non-lu.
C'est une autre requete ou il faut juste mettre une précision dans la requete?
Ici tu m'écris 2 messages, ça écrire deux. Mon but c'est que peut importe le nbre de message que tu m'as envoyé ça met 1 car une personne à des messages non-lu.
J'avais repéré ça mais je n'étais pas sûr et puis j'ai du mal à voir comment je dois faire...
Je dois juste faire cette requete: SELECT COUNT(IDauteur) FROM utilisateur WHERE IDdestinaire = mon id ?
Et si tu veux le nombre pas hauteur dans ce cas-là il faut en plus ajouter un group by
Comme je sais ce code ne fonctionne pas... J'utilise toujours mes requêtes avec la seconde ligne et donc avec fetch. Mais dans ce cas ce n'est pas ce qu'il me faut. J'ai déjà fait des requetes avec autres choses que fetch mais impossibles de m'en souvenir ou retrouver une page avec un exemple.
Pourrais-tu me venir en aide?
Je sais que c'est les bases mais n'en faisant pas beaucoup, j'oublie de temps en temps une partie des bases. :(
Dans le where: genre c'est un nombre pour identifier le chat car il y en a plusieurs...
Dans cette requete je ne tiens pas encore compte du lu ou non lu.
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
A savoir que : le "fetch" retourne 1 ligne du résultat de la requête
fetchAll retourne un array avec TOUTES les lignes de résultat