Notification des message non lus avec php

Fermé
soso - 2 juin 2010 à 13:10
 soso - 2 juin 2010 à 18:46
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,

A voir également:

4 réponses

avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 504
2 juin 2010 à 14:55
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
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 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 504
2 juin 2010 à 18:43
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
merci bc je vais essayer,
0