在JavaScript中刷新页面后如何更新数据库中表的星级? - javascript

        

    

我想让用户有机会更改产品的评分值,但是刷新页面后它不起作用。例如,当他使用未评级的新产品时,可以在刷新页面之前一次又一次地更改评级值。但是刷新页面后,他可以更改同一产品的评级值,但是“ ratingValue2”的警报不起作用,数据库也没有更新。

这是我的PHP代码。

$jsqla3 = mysql_query("select * from user_star_rate where product_id='$product_id' and email='$visit_email'") or die(mysql_error());
$jfeta3 = mysql_fetch_assoc($jsqla3);

if($jfeta3 != null) {
  $ratea = $jfeta3['rate_value'];
} 

这是我的HTML代码。

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

这是我的javaScript代码。

$(function(){
 $(document).ready(function(e) {
   var $stars = $('.input-star-rate');

   $stars.bind('change', function() {
      var $this = $(this); 
      var ratingValue = $this.val();
      var ratingValue2 = parseFloat(ratingValue);
      alert(ratingValue2);
   });
 });
});

参考方案

首先,您应该删除document.ready(),因为您已经使用了它的速记。

对于刷新页面时遇到的问题,您没有获得更新的汇率,那么您需要使用$.ajax()之类的方法来更新数据库,以更改星级,

$(function(){
    var $stars = $('.input-star-rate');

    $stars.bind('change', function() {
      var $this = $(this); 
      var ratingValue = $this.val();
      var ratingValue2 = parseFloat(ratingValue);
      alert(ratingValue2);
      $.ajax({
         url:'update_user_rate.php',data:{rate:ratingValue},
         success:function(data){
             alert(data);// you can apply check for success or error
         }
      });
    });
});

同样,在update_user_rate.php页面中,您需要使用查询来更新数据库,以便下次刷新页面时获得更新的用户费率。

使用JS和PHP更改弹出窗口背景图像 - javascript

我有一个JS函数:function zoom(now) { document.getElementById("popup").style.display = "block"; document.getElementById("photos").style.backgroundImage = …

执行onclick时获得意外令牌 - javascript

我正在使用onclick事件从PHP调用JS函数。这是我的代码:我在一个函数中,因此我需要通过PHP来完成它,因为然后我会返回:$html = '<input type="checkbox" checked value="1" id="setGetSku" name="se…

PHP json_encode数组到javascript关联数组 - javascript

我有一些从PHP中读取的mysqli列。它正在完美地获取和回显。$results = mysqli_fetch_assoc(mysqli_query($conn, $querystring)); echo json_encode($results); //$results = {"title":"Sea Shells"…

PHP-显示特殊字符 - javascript

允许用户输入的代码段//fetch user input and pass it in URL alertify.prompt("Please enter note/remarks for this Form (optional):", function (e,value) { if (e) { alertify.success(…

Mongo汇总 - javascript

我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …