bonjour
j'ai créé un petit script ajax qui m'affiche une bulle avec le nombre de message tchat cette bulle doit s'afficher à coté du profil qui m'as envoyé un message mais la bulle s'afiche à coté de tous les pseudos de la liste
je vous laisse mon ajax:
var verif_chat;
clearInterval(verif_chat);
var div_mess;
function fonction_verif_chat(){
//$('#list_profil').empty();
$.ajax({
url : "/chat/liste_profil.php", // on passe l'id le plus récent au fichier de chargement
method : 'GET',
success : function(html){
$('#list_profil').empty().append(html);
}
});
}
verif_chat = setInterval(function() {fonction_verif_chat();}, 1000);
la page list profil qui est appelé:
while($data2 = mysql_fetch_array($req2))
{
$sql3 = mysql_query("SELECT sexe FROM membres WHERE pseudo='".$data2['dest']."'") or die (mysql_error());
list($sexe) = mysql_fetch_row($sql3);
$sql3 = mysql_query("SELECT COUNT(*) FROM chat WHERE dest='".$_SESSION['pseudo']."' AND exp='".$data2['dest']."' AND nouv='oui'") or die (mysql_error());
list($nbre_chat) = mysql_fetch_row($sql3);
if ($nbre_chat!='0')
{
$verif = '<div class="new_chat"><p>'.$nbre_chat.'</p></div>';
}
if ($sexe == 'Homme')
{
echo '<A style="margin-bottom: -15px; color: #007ba2;" class="chat_profils_homme" href="/chat/chat.php?exp='.$_SESSION['pseudo'].'&dest='.$data2['dest'].'">'.$data2['dest'].''.$verif.'</a>';
}
else
{
echo '<A style="margin-bottom: -15px; color: #f40e63;" class="chat_profils_homme" href="/chat/chat.php?exp='.$_SESSION['pseudo'].'&dest='.$data2['dest'].'">'.$data2['dest'].''.$verif.'</a>';
}
}
voici l'image pour expliquer le probleme:
par rapport à l'image je suis sur la 2eme discution le pseudo en bleu et c'est le pseudo en rouge qui m'as écris donc la bulle devrais juste être à coté du 1er pseudo de la liste
Pour $sql3, je pense que c'est mysql_result($sql3)
et pas fetch row. Sinon ta condition sera toujours différente de 0.
c'est pas ça le problème car si je fait ça:
$sql3 = mysql_query("SELECT COUNT(*) FROM chat WHERE dest='".$_SESSION['pseudo']."' AND exp='".$data2['dest']."' AND nouv='oui'") or die (mysql_error());
list($nbre_chat) = mysql_fetch_row($sql3);
if ($sexe == 'Homme')
{
echo '<A style="margin-bottom: -15px; color: #007ba2;" class="chat_profils_homme" href="/fiche_cli/chat.php?exp='.$_SESSION['pseudo'].'&dest='.$data2['dest'].'">'.$data2['dest'].'<div class="new_chat"><p>'.$nbre_chat.'</p></div></a>';
}
else
{
echo '<A style="margin-bottom: -15px; color: #f40e63;" class="chat_profils_homme" href="/fiche_cli/chat.php?exp='.$_SESSION['pseudo'].'&dest='.$data2['dest'].'">'.$data2['dest'].'<div class="new_chat"><p>'.$nbre_chat.'</p></div></a>';
}
ça me retourne bien le bon nombre de message mais je veux juste affiche la bulle et le nombre de message si supérieur à 0
la je comprend pas car si je remplace
if ($nbre_chat != 0)
{
$verif = '<div class="new_chat"><p>'.$nbre_chat.'</p></div>';
}
par
$verif = '<div class="new_chat"><p>'.$nbre_chat.'</p></div>';
j'ai bien le bon nombre de message non lu qui s'affiche