Notification des message non lus avec php
soso
-
soso -
soso -
Bonjour,
je suis entrain de developper un site web avec php et je veus ajouter une notification que j'ai des message non lu dans ma boite mais je ne sais comment je peux le fais,est ce que qlq peut m'aider?????
merci d'avance
trés urgent,
je suis entrain de developper un site web avec php et je veus ajouter une notification que j'ai des message non lu dans ma boite mais je ne sais comment je peux le fais,est ce que qlq peut m'aider?????
merci d'avance
trés urgent,
4 réponses
-
Dans ta table ajoute un champ « lu » du type booléen.
Ensuite, il te suffit de compter le nombre de messages non-lus :SELECT COUNT(*) AS nb FROM messages WHERE destinataire=1 AND lu=0
-
Rebonjour,
D'abord merci pour votre réponse,mais ça je l'ai fais, ce que je veut,c'est que une popup s'affiche automatiquement me dit que j'ai des message non lus et se ferme après qlq seconde automatiquement? -
Tu peux ajouter un autre champ du type booléen nommé « alerte ».
Par défaut, il aura comme valeur 0.
Quand on charge une page, tu comptes le nombre d'entrée « WHERE alerte=0 ».
S'il y a plus d'une entrée, tu affiches un message et tu mets à jour la table en mettant tous les « alerte » à 1. Sinon, tu ne fais rien.
<?php $pdo = new PDO('mysql:host=localhost;dbname=ta_base','root',''); $sql = 'SELECT COUNT(*) AS nb FROM messages WHERE destinataire='.$_SESSION['id'].' AND alerte=0'; $req = $pdo->query($sql); $data = $req->fetch(); $req->closeCursor(); if($data['nb'] > 0) { echo 'Il y a un nouveau message !'; $sql = 'UPDATE messages SET alerte=1 WHERE destinataire='.$_SESSION['id']; $pdo->exec($sql); } ?>Je n'ai pas testé, mais l'idée est là. -