简体   繁体   English

如何使用php将我的星级评定值发送到mysql数据库

[英]How can I send my star rating value to mysql database using php

I have developed a star rating system in my website using HTML and JS. 我已经使用HTML和JS在我的网站上开发了星级评定系统。 It's working well but when I try to send that value to my database it always sends 0. As I am new to PHP it's hard for me to understand what's wrong and where. 它运行良好,但是当我尝试将该值发送到数据库时,它始终发送0。由于我是PHP新手,所以很难理解问题所在和位置。 Sometimes this may be a silly question :/ Please someone help me here! 有时这可能是一个愚蠢的问题:/请有人在这里帮助我!

This is my HTML code: 这是我的HTML代码:

<div class="form-group" id="rating-ability-wrapper">
    <label class="control-label" for="rating">
        <h2 align="center">Rate Our Service</h2>
        <span class="field-label-info"></span>
        <input type="hidden" id="selected_rating"   name="selected_rating" value="" required="required">
    </label>
    <h2 class="bold rating-header" style="text-align: center;">
        <span name="rate" value="rate" class="selected-rating">0</span><small> / 5</small>
    </h2>
    <div style="text-align: center;">
        <button type="button" class="btnrating btn-default btn-lg" data-attr="1" id="rating-star-1" name="rating-star1" value="1">
            <i class="fa fa-star" aria-hidden="true"></i>
        </button>
        <button type="button" class="btnrating btn-default btn-lg" data-attr="2" id="rating-star-2" name="rating-star2" value="2">
            <i class="fa fa-star" aria-hidden="true"></i>
        </button>
        <button type="button" class="btnrating btn-default btn-lg" data-attr="3" id="rating-star-3" name="rating-star3" value="3">
            <i class="fa fa-star" aria-hidden="true"></i>
        </button>
        <button type="button" class="btnrating btn-default btn-lg" data-attr="4" id="rating-star-4" name="rating-star4" value="4">
            <i class="fa fa-star" aria-hidden="true"></i>
        </button>
        <button type="button" class="btnrating btn-default btn-lg" data-attr="5" id="rating-star-5" name="rating-star5" value="5">
            <i class="fa fa-star" aria-hidden="true"></i>
        </button>
    </div>              
</div><br><br><br><br><br>

JS Code: JS代码:

jQuery(document).ready(function($){

$(".btnrating").on('click',(function(e) {

var previous_value = $("#selected_rating").val();

var selected_value = $(this).attr("data-attr");
$("#selected_rating").val(selected_value);

$(".selected-rating").empty();
$(".selected-rating").html(selected_value);

for (i = 1; i <= selected_value; ++i) {
$("#rating-star-"+i).toggleClass('btn-warning');
$("#rating-star-"+i).toggleClass('btn-default');
}

for (ix = 1; ix <= previous_value; ++ix) {
$("#rating-star-"+ix).toggleClass('btn-warning');
$("#rating-star-"+ix).toggleClass('btn-default');
}

}));

}); });

PHP Code: PHP代码:

<?php
require_once('dbh.inc_2.php');

$rate = '0';
if (isset($_POST['rating-star1'])) {
    $rate = '1';
} 
if (isset($_POST['rating-star2'])) {
    $rate = '2';
} 
if (isset($_POST['rating-star3'])) {
    $rate = '3';
} 
if (isset($_POST['rating-star4'])) {
    $rate = '4';
} 
if (isset($_POST['rating-star5'])) {
    $rate = '5';
} 

if (isset($_POST['button_post'])) {

    $feedback=addslashes($_POST["feedback"]);
    $f_author=$_POST["fAuthor"];
    $f_date=$_POST["fDate"];
    $rate_star = $rate;

    if (empty($feedback)) {
        $m = "Please enter your feedback";
        header("location:../post_feedback.php?msg=$m");
        exit();
    }
    else {
        $sql ="INSERT INTO feedbacks(feedback_body, feedback_author, feedback_date, rating)VALUES('$feedback','$f_author','$f_date', '$rate_star')";

        if (mysqli_query($conn, $sql)) 
        {
            $m= "Feedback Sent";
        } 
        else
        {
            $m= "Error: " . $sql . "<br>" . mysqli_error($conn);
        }
    }
}

header("location:../post_feedback.php?msg=$m");

Send the value of your button into a hidden input and then submit your form. 将按钮的值发送到隐藏的输入中,然后提交表单。 That will work in this code. 这将在此代码中起作用。 Thanks 谢谢

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM