>我有一个页面显示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"]." </p>";
echo "<p class='"paratitle3'">".$data["howto"]." </p>";
echo "<p class='"paratitle2'">".$data["ingredient1"]." </p>";
echo "<p class='"paratitle3'">".$data["quantity1"]." </p>";
echo "<p class='"paratitle2'">".$data["ingredient2"]." </p>";
echo "<p class='"paratitle3'">".$data["quantity2"]." </p>";
echo "<p class='"paratitle2'">".$data["ingredient3"]." </p>";
echo "<p class='"paratitle3'">".$data["quantity3"]." </p>";
echo "<p class='"dateadded'">".$data["dateadded"]." </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>
添加.php:
<?php
mysql_select_db("mwheywood", $con);
//insert cocktail details
$sql="INSERT INTO tblRating (cocktailID, value, counter)
VALUES
('$_POST[id]','$_POST[ratinglevel]','1'";
if (!mysql_query($sql,$con))
{
die('Error: you fail at life' . mysql_error());
}
echo "<p>Thanks for voting</p>"
?>
我想将评级保存到的表格通过"cocktailID"链接到上述代码中正在回显的数据。
而"tblRating"的表结构是:ratingID,cocktailID,value,counter.。
因此,我希望选项值保存到相应的"cocktailID"中,在"值"字段中,并在计数器字段中发布"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>
然后,这将返回ID以及表单结果,届时您将拥有可用的鸡尾酒ID
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
}
}