Bonjour,
Dans ma liste de news, j'éssaie de mettre des indicateurs de nombre de vues(lectures), de commentaires et de partages.
En m'inspirant du http://www.lefigaro.fr , je voudrais que le nombre et l'icône de lectures passent en rouge dès qu'ils dépassent disons 50 vues.
Dans ma table "news" , il y a un champ libéllé "lectures" qui correspond au nombre de vues pour chaque news.
Il est de type int(6) et prend des valeurs de 1 à 100.

Mais au vu de mes codes , le nombre de lecture et l'icône restent invariablement rouges .
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<div id="counters_<?php echo $donnee['id'];?>" class="counters" >
    <div class="icon-views" alt="nombre de lectures" title="Lectures"><i class="fa fa-eye"></i></div>
    <div class="count-views" alt="nombre de lectures" title="Lectures">
        <?php
            $id=$donnee['id'];
            $retour_count = mysql_query( "SELECT COUNT(*) AS nbre_vues FROM news WHERE id='" . $id ."' ");
            $donnees_count = mysql_fetch_assoc($retour_count);
            if ($donnees_count['nbre_vues'] == 0){
                mysql_query("INSERT INTO news(lectures) VALUES 1");
                echo "1";
 
            } else {
                $retour = mysql_query("SELECT lectures FROM news WHERE id='" . $id ."' ");
                $donnees = mysql_fetch_assoc($retour);
                $lectures = $donnees['lectures'] + 1;
                mysql_query("UPDATE news SET lectures = lectures + 1 WHERE id='" . $id ."' ");
                echo $lectures;
            }
        ?>
    </div>
</div>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<script>
    var highlighted=<?php echo $lectures ?>,
        kounter = document.getElementsByClassName("count-views"),
        ikon = document.getElementsByClassName("icon-views");
 
    if(highlighted > 50){
        $(kounter).css("color","#f00"); 
        $(ikon).css("color","#f00");
    }else {
        $(kounter).css("color","#999");
        $(ikon).css("color","#999");
    }
</script>
En faisant un echo gettype($lectures) j'ai bien 'integer'.
Personnellement, je pense que la var highlighted n'est pas de type numeric (ou integer) pour être comparée avec $lectures.
Quelqu'un aimerait-il me montrer où ça cloche ?
Merci d'avance.