星级评分系统试图将值插入数据库

时间:2016-07-23 19:36:49

标签: javascript php mysql

您好我正在使用Nashio/star-rating-svg

我已经设置了关于星星显示的一切,并且悬停工作也很好但是问题是我无法获取它并将其插入到我的数据库中,它在文档中说了一些关于回调函数但是它不适合我。以下是我到目前为止的情况:

将星星插入html:

<div class="my-rating"></div>

初始化星星并让它们运行的​​代码:

<script>

        $(".my-rating").starRating({
            starSize: 45,
            <?php
                if(Login::isLogged(Login::$login_front)) {
                    echo "readOnly: false,";
                } else {
                    echo "readOnly: true,";
                }           
            ?>
            disableAfterRate: false,
            callback: function(currentRating) {
                $rating = currentRating;
                <?php
                      $addRating = $objRating->addRating($client_id, $rating);
                ?>
            }
        });

    </script>

问题不在于试图将评级添加到数据库的PHP代码,但问题是函数没有被调用或者开始执行和插入根本没有,明星也不会显示什么时候我插入回调部分,任何帮助设置了这个工作的人都会有很大的帮助,我期待你的回复。

1 个答案:

答案 0 :(得分:1)

我已经更新了我的全部答案。它已经过测试并且正在运行:

星标出现且用户点击率的主文件:

<!DOCTYPE html>
<html>
    <head>
        <title>Rating</title>

        <!-- Add the plugin's CSS (make sure of path) -->
        <link rel="stylesheet" type="text/css" href="src/css/star-rating-svg.css">
    </head>
    <body>

    <!-- Display the stars on page -->
    <div class="my-rating"></div>

    <!-- Add jquery.min.js -->
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>

    <!-- Add plugin's required JS (make sure of paths) -->
    <script src="src/jquery.star-rating-svg.js"></script>

    <!-- Initiate the plugin -->
    <script>
        $(".my-rating").starRating({
            starSize: 25,
            callback: function(currentRating, $el){

                $.post('submit_rating.php', {rating: currentRating});

            }
        });
    </script>
    </body>
</html>

如果您计划将该文件保存在任何内部目录中,那么将评级插入数据库的PHP文件(submit_rating.php)应位于同一目录中或调整上述$_POST请求中的路径。将该文件另存为submit_rating.php并在该文件中,您将收到评分值$_POST['rating'];然后,您可以将该值插入数据库,如下所示:

$rating = $_POST['rating']; // don't forget to sanitize

然后将$rating插入数据库。我希望这会有所帮助。