Php 简单的评级制度;获取当前条目的ID并发布到表

Php 简单的评级制度;获取当前条目的ID并发布到表,php,mysql,forms,Php,Mysql,Forms,我有一个显示mysql条目数据的页面,具体取决于用户单击的链接($pagename)。。我想知道如何创建一个非常基本的评分系统,它将由一个下拉选项为1到5的表单组成,当用户提交此值时,它将数据发布到当前页面上条目的相应ID <?php $pagename = $_GET['name']; $sql = "SELECT * FROM tblCocktail WHERE name = '$pagename' LIMIT 1"; /*$sql = sprintf(%sql, mysql_r

我有一个显示mysql条目数据的页面,具体取决于用户单击的链接($pagename)。。我想知道如何创建一个非常基本的评分系统,它将由一个下拉选项为1到5的表单组成,当用户提交此值时,它将数据发布到当前页面上条目的相应ID

   <?php
$pagename = $_GET['name'];
$sql = "SELECT * FROM tblCocktail WHERE name = '$pagename' LIMIT 1";
/*$sql = sprintf(%sql, mysql_real_escape_string($pagename));*/
$result = mysql_query($sql);
if(!$result) {
    // error occured
}
$data = mysql_fetch_assoc($result);
echo "<p class=\"paratitle\">".$data["name"]."&nbsp;&nbsp;&nbsp;&nbsp;</p>";
echo "<p class=\"paratitle3\">".$data["howto"]."&nbsp;&nbsp;&nbsp;&nbsp;</p>";
echo "<p class=\"paratitle2\">".$data["ingredient1"]."&nbsp;&nbsp;&nbsp;&nbsp;</p>";
echo "<p class=\"paratitle3\">".$data["quantity1"]."&nbsp;&nbsp;&nbsp;&nbsp;</p>";
echo "<p class=\"paratitle2\">".$data["ingredient2"]."&nbsp;&nbsp;&nbsp;&nbsp;</p>";
echo "<p class=\"paratitle3\">".$data["quantity2"]."&nbsp;&nbsp;&nbsp;&nbsp;</p>";
echo "<p class=\"paratitle2\">".$data["ingredient3"]."&nbsp;&nbsp;&nbsp;&nbsp;</p>";
echo "<p class=\"paratitle3\">".$data["quantity3"]."&nbsp;&nbsp;&nbsp;&nbsp;</p>";
echo "<p class=\"dateadded\">".$data["dateadded"]."&nbsp;&nbsp;&nbsp;&nbsp;</p>";
?>
                        </div>
                    </div>
                    <div id="cont2">
                        <div id="contentwrap">
                    <form method="POST" action="addrating.php" >
           <input type="hidden" name="cocktailID" value="<?=$data["id"]?>">
           <select id="ratinglevel" name="ratinglevel">
              <option></option>
              <option>1</option>
              <option>2</option>
              <option>3</option>
              <option>4</option>
              <option>5</option>
            </select>
            <input type="submit" value="submit" />
            </form>

我想保存评级的表格通过“Cocktaild”链接到上面代码中要回显的数据

“tblRating”的表结构为:ratingID、Cocktail、value、counter

因此,我希望选项值保存到“值”字段中相应的“Cocktaild”,并在计数器字段中显示一个“1”。


-非常感谢您的帮助-马特

在您发送此表单时,只需包含当前ID即可

           <form method="POST" action="addrating.php" >
           <input type="hidden" name="cocktailID" value="<?=$data["id"]?>">
           <select id="ratinglevel" name="ratinglevel">
              <option></option>
              <option>1</option>
              <option>2</option>
              <option>3</option>
              <option>4</option>
              <option>5</option>
            </select>
            </form>

你想保存什么值以及在哪个表字段中?回答得好,注意mysql\u real\u escape\u字符串,比如Sarah Pantry插入的字符串。看起来不错,我甚至回显了Cocktail,但它没有将其发布到数据库中?检查是的,我已经更改了,它很好地获得了Cocktaild,但是当运行php脚本时,它似乎没有在表中放入任何内容;它说发生了错误,以查看sql是否有问题。
           <form method="POST" action="addrating.php" >
           <input type="hidden" name="cocktailID" value="<?=$data["id"]?>">
           <select id="ratinglevel" name="ratinglevel">
              <option></option>
              <option>1</option>
              <option>2</option>
              <option>3</option>
              <option>4</option>
              <option>5</option>
            </select>
            </form>
    if (isset($_POST['cocktailID']) && isset($_POST['ratinglevel']))
        $sql = "INSERT INTO tblRating SET cocktailID = ".mysql_real_escape_string($_POST['cocktailID']).", value = ".mysql_real_escape_string($_POST['ratinglevel']).",counter = 1";
        $result = mysql_query($sql);
        if(!$result) {
            // error occured
        }
    }