如何在点击PHP中的星星时获得评级值?

时间:2014-11-25 10:40:09

标签: php html ajax

我想让用户给星级评分,并且我想在用户评级后更新数据库值。

这是我的PHP代码。

<?php foreach($genres as $genre){
    $jsqla = mysql_query("select id,name,rate_score,rate_number,video_image from products where genre='$genre' limit 0,5");

    while($jrowa = mysql_fetch_assoc($jsqla)){
        if($jrowa['rate_number'] > 0){ $ratea = $jrowa['rate_score'] / $jrowa['rate_number']; }else{ $ratea = 0; 
    }
?>

这是我的HTML代码。

<input class="rating form-control input-star-rate" value="<?php echo $ratea; ?>" data-min="0" data-max="5" data-step="0.3" data-size="xs" style="display: none; text-align: center;"/>

1 个答案:

答案 0 :(得分:1)

使用html / javascript进行简单评分

//HTML:
    <form class="rating" method="post">
                <input type="radio" id="star5" name="rating" value="5" onclick="postToController();" /><label for="star5" title="Super !!">5 stars</label>    
                <input type="radio" id="star4" name="rating" value="4" onclick="postToController();" /><label for="star4" title="Geil">4 stars</label>
                <input type="radio" id="star3" name="rating" value="3" onclick="postToController();" /><label for="star3" title="Gut">3 stars</label>
                <input type="radio" id="star2" name="rating" value="2" onclick="postToController();" /><label for="star2" title="So gut wie">2 stars</label>
                <input type="radio" id="star1" name="rating" value="1" onclick="postToController();" /><label for="star1" title="Schlecht">1 star</label>
    </form> 

//Javascript:
function postToController() {
        for (i = 0; i < document.getElementsByName('rating').length; i++) {
                if(document.getElementsByName('rating')[i].checked == true) {
                    var ratingValue = document.getElementsByName('rating')[i].value;
                    break;
                }
        }
        alert(ratingValue);
}

这是php Link

中评级系统的好方法