Stopper le count
Posté : 23 sept. 2013, 20:07
Bonjour,
Sur ma page de citations, j'en appelle 8 par page depuis une BDD.
J'essaie d'intégrer un système de vote par étoiles comme on trouve partout. La fonction array a été modifiée pour fonctionner avec les n° ID des citations.
Le problème:
Si je n'appelle qu'une citation par page, ça marche. Mais comme je les appelle par 8, j'ai un bug.
Plutôt que d'avoir:
Voici un bout de code:
$ids correspond au n° ID de la citation.
Merci pour votre aide.
Sur ma page de citations, j'en appelle 8 par page depuis une BDD.
J'essaie d'intégrer un système de vote par étoiles comme on trouve partout. La fonction array a été modifiée pour fonctionner avec les n° ID des citations.
Le problème:
Si je n'appelle qu'une citation par page, ça marche. Mais comme je les appelle par 8, j'ai un bug.
Plutôt que d'avoir:
J'ai:Citation1
note1
Citation2
note2
Etc...
Je pense que c'est lié aux fonctions d'incrémentation qui servaient avec array (1,2,3)Citation1
note1
Citation2
note1
note2
Citation3
note1
note2
note3
etc...
Voici un bout de code:
Code : Tout sélectionner
<?php
for($i=0;$i<count($ids);$i++)
{
$rating_tableName = 'ratings';
$id=$ids[$i];
$q="SELECT ratings.total_votes, ratings.total_value FROM $rating_tableName WHERE ratings.id=$id";
$r=mysql_query($q);
if(!$r) echo mysql_error();
while($row=mysql_fetch_array($r))
{
$v=$row['total_votes'];
$tv=$row['total_value'];
$rat=$tv/$v;
}
$j=$i+1;
$id=$ids[$i];
echo'<div class="product">
Rate Item '.$j.'
<div id="rating_'.$id.'" class="ratings">';
for($k=1;$k<6;$k++){
if($rat+0.5>$k)$class="star_".$k." ratings_stars ratings_vote";
else $class="star_".$k." ratings_stars ratings_blank";
echo '<div class="'.$class.'"></div>';
}
echo' <div class="total_votes"><p class="voted"> Rating: <strong>'.@number_format($rat).'</strong>/5 ('.$v. ' vote(s) cast)
</div>
</div></div>';}
?>
Merci pour votre aide.