Php 如何在mysql数据库中存储stars rating的值
您好,我有一个表格,其中包含评级、姓名、电子邮件和评论。我能够为姓名、电子邮件和评论插入用户输入数据。但不知道如何在数据库中存储星级。任何人都可以帮助我。谢谢Php 如何在mysql数据库中存储stars rating的值,php,html,mysql,css,Php,Html,Mysql,Css,您好,我有一个表格,其中包含评级、姓名、电子邮件和评论。我能够为姓名、电子邮件和评论插入用户输入数据。但不知道如何在数据库中存储星级。任何人都可以帮助我。谢谢 <?php if(isset($_POST['submit'])) { $name = $_POST['name']; $email = $_POST['email']; $comments = $_POST['comments']; $ratings = $_POST['ratings']; $link = mysq
<?php
if(isset($_POST['submit']))
{
$name = $_POST['name'];
$email = $_POST['email'];
$comments = $_POST['comments'];
$ratings = $_POST['ratings'];
$link = mysqli_connect("localhost", "root", "", "imakr");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$res = mysqli_query($link, "insert into imakr.customer_review(name, email, comments, ratings) values('$name','$email','$comments', '$ratings')");
if($res)
{
echo "Your feedback is saved";
}
else
{
echo " OOPs!! there is some error. Please check the fields";
}
}
?>
<form id="customer_review" name="cust_rev"action="" method="post" onsubmit="return validate()">
<table width="535" border="0">
<tr>
<td>Rate This Product:
</td>
<td>
<span id="rateStatus">Rate Me...</span>
<span id="ratingSaved">Rating Saved!</span>
<div id="rateMe" title="Rate Me...">
<a onclick="rateIt(this)" id="_1" title="Poor" onmouseover="rating(this)" onmouseout="off(this)"><span class="ratings">1</span></a>
<a onclick="rateIt(this)" id="_2" title="Not Bad" onmouseover="rating(this)" onmouseout="off(this)"><span class="ratings">2</span></a>
<a onclick="rateIt(this)" id="_3" title="Pretty Good" onmouseover="rating(this)" onmouseout="off(this)"><span class="ratings">3</span></a>
<a onclick="rateIt(this)" id="_4" title="Excellent" onmouseover="rating(this)" onmouseout="off(this)"><span class="ratings">4</span></a>
<a onclick="rateIt(this)" id="_5" title="Marvellous" onmouseover="rating(this)" onmouseout="off(this)"><span class="ratings">5</span></a>
</div>
</td>
</tr>
<tr>
<td width="129"><span class="titles">Name</span><span class="star">*</span>:</td>
<td width="396"><label for="name"></label>
<input type="text" name="name" id="name" /></td>
</tr>
<tr>
<td><span class="titles">Email</span><span class="star">*</span>:</td>
<td><label for="email"></label>
<input type="text" name="email" id="email" /></td>
</tr>
<tr>
<td height="61">Comments:</td>
<td><label for="comments"></label>
<textarea name="comments" id="comments" cols="45" rows="5" onchange="maxlength('comments', 500)"></textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="submit" id="submit" value="Submit" /></td>
</tr>
</table>
<p> </p>
</form>
创建一个名为ratings的隐藏输入字段
<input id="ratings" type="hidden" name="ratings" value="" />
或者,如果您不想在不提交表单的情况下动态提交此信息,则可以使用请求将此信息提交到数据库
作为一个非常重要的补充说明,在您继续之前,请停止使用mysql.*
函数,并开始使用or。特别是查看带有绑定值的准备好的语句,当然,除非您希望看到整个数据库被SQL注入删除。创建一个名为ratings的隐藏输入字段
<input id="ratings" type="hidden" name="ratings" value="" />
或者,如果您不想在不提交表单的情况下动态提交此信息,则可以使用请求将此信息提交到数据库
作为一个非常重要的补充说明,在您继续之前,请停止使用mysql.*
函数,并开始使用or。特别是看带有绑定值的准备语句,当然,除非您希望看到整个数据库被SQL注入删除
选择一种数据类型,如果只存储整数评级,[例如:3/5星],则使用TINYINT
。如果要存储星号的分数,[例如:3.5/5星],则使用十进制(2,1)
存储一些有关用户的标识信息,以防止多次评级。如果用户无需登录即可对某些内容进行评级,则将其IP地址与评级一起存储
选择一种数据类型,如果只存储整数评级,[例如:3/5星],则使用TINYINT
。如果要存储星号的分数,[例如:3.5/5星],则使用十进制(2,1)
存储一些有关用户的标识信息,以防止多次评级。如果用户无需登录即可对某些内容进行评级,则将其IP地址与评级一起存储
立即停止使用此代码。它容易受到SQL注入的攻击。您使用的API已弃用。而是学习,并使用or-将帮助您决定哪一个。@Polish Prince抱歉,您能告诉我为什么吗?我是一名初学者。是的,我建议使用mysqli,请查看此链接@user2148257单击链接了解原因。@user2148257查找,甚至会立即停止使用此代码。它容易受到SQL注入的攻击。您使用的API已弃用。而是学习,并使用or-将帮助您决定哪一个。@Polish Prince抱歉,您能告诉我为什么吗?我是一个初学者。是的,我建议使用mysqli,请查看此链接@user2148257单击链接了解原因。@user2148257查找,甚至有一个Hi,它将存储来自的值。请解释我,我没有理解您。谢谢,您不能在PHP中使用$\u POST[]
访问范围内的值。您必须以$\u POST[]
值的形式提交您的评分值才能访问它,这就是为什么我说要创建一个名为ratings的隐藏输入字段,然后在用户单击其中一个评分时更新此值。抱歉,我不明白。我不是高级开发人员,先生,我也不是高级开发人员。您是想在提交整个表单时执行此操作,还是将评级部分与表单分开?您好,它会存储来自的值吗?请解释我,我没有理解您。谢谢,您不能在PHP中使用$\u POST[]
访问范围内的值。您必须以$\u POST[]
值的形式提交您的评分值才能访问它,这就是为什么我说要创建一个名为ratings的隐藏输入字段,然后在用户单击其中一个评分时更新此值。抱歉,我不明白。我不是高级开发人员,先生,我也不是高级开发人员。您希望在提交整个表单时执行此操作,还是将评级部分与表单分开?我想知道如何从表单中提取评级值?我想知道如何从表单中提取评级值?