Notification des message non lus avec php

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,

4 réponses

avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
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
0
soso
 
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?
0
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
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à.
0
soso
 
merci bc je vais essayer,
0