[RESOLU] Notifications

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Notifications

Re: [RESOLU] Notifications

par nico44530 » 17 juin 2013, 14:34

C'est résolu :

Voila la bonne requête
$req = $connect->prepare('SELECT COUNT(id) as row, id_destinataire, id_expediteur FROM wa_messagerie WHERE lu=0 AND id_destinataire=:id_expediteur');
$req->execute(array(':id_expediteur'=>$_SESSION['id']));
$resultat = $req->fetch(PDO::FETCH_OBJ);
Merci quand même ;)

Re: Notifications

par timotebx » 16 juin 2013, 18:15

Enlève Ajax

Re: Notifications

par moogli » 16 juin 2013, 16:48

Salut

Quitte a utiliser une requête préparée autant le faire pour l'id même si celle ci n'est pas utile.

As tu testé ta requête avec un client SQL ?

Les champs numériques n'ont pas besoin d'être délimité.
Le délimiteur des chaîne c'est une quote (') et non la double quote (").

Test le script php directement avec ton navigateur sans utiliser Ajax.

@+

Notifications

par nico44530 » 15 juin 2013, 15:26

Bonjour,

J'ai une messagerie, à chaque message envoyé, une notification arrive chez le destinataire.
Mais le problème c'est que la notification est visible chez tous les membres, même celui qui a envoyé le message.

Voici ma table wa_messagerie :

id
id_expediteur
id_destinataire
message
lu
timestamp


Voici le code notification.php inclus dans un header qui est actualisé en ajax :
<?php
require_once('../include/config.inc.php');
$req = $connect->prepare('SELECT COUNT(id) as row FROM wa_messagerie WHERE lu=:lu AND id_destinataire="'.$_SESSION['id'].'"');
$req->execute(array(':lu'=>false));
$resultat = $req->fetch(PDO::FETCH_OBJ);
?>
<?php if($resultat->row > 0 && $resultat !== false) { echo $resultat->row; } ?>
Dès que je rajoute le bout de code : AND id_destinataire="'.$_SESSION['id'].'", la notification ne fonctionne plus,
si j'enlève le bout de code, elle fonctionne mais chez tous les membres.

Mon script ajax :

[javascript]function getNotifications() {
J.ajax({
url: "../ajax/notifications.php",
ifModified:true,
statusCode: {
500: function(){
J('#server-500').html('Serveur en surcharge, patientez quelques instants...');
},
},
success: function(content){
J('.messagesValue').html(content);
if(content>0){ J('.messagesValue').css({ 'display':'block' }); }
if(content<1){ J('.messagesValue').css({ 'display':'none' }); }
}
});
setTimeout(getNotifications, 60000);
}[/javascript]
Merci d'avance ;)