【发布时间】:2019-07-08 08:10:08
【问题描述】:
我有一个数据库表“mtoken”,其中有一个列“sbonus”,如果我向该表添加任何新行意味着“sbonus”的初始值设置为“0”。我将通过用户定义的输入框为“sbonus”赋值,无论如何,“sbonus”的值不应超过 5000。
我的要求是在“Sbonus”+“输入框中的用户定义值”中添加值,然后检查该值是否小于 5000 的条件,如果小于,则将添加的最终值更新为“sbonus” .如果不返回“超出值”
最初,给定的值加上 0 并将 db 设置为给定的值。现在,如果我向“mtoken”添加新行,则现有行在“sbonus”列中有一些值(“100”),“sbonus”列的值为“0”。
现在我从用户定义的输入框中给出一个值“200”。应该是这样的, 现有行红利值 100+200 = 300
新行红利值, 0+200 = 200
当我使用下面的代码时,所有行的“sbonus”值都设置为 200。请找到下面的代码,请帮我解决它。
用户定义的输入值给出为200的意思,
现有行 Sbonus 值为 100
新行 Sbonus 值为 0
检查条件输出值应该小于5000。
我需要输出为
现有的“sbonus”行应该是这样的,
100 + 200 = 300
新行“Sbonus”值应该是这样的,
0+200 = 200
<div class="row">
<div class="col-lg-4">
<form method="post" action="add_sbonus.php">
<div class="form-group">
<label>Surprise Bonus Per Token</label>
<input type="number" name="sbonus" class="form-control" required>
</div>
<div class="form-group">
<input type="submit" name="s_bonus" class="btn btn-primary" value="SurpriseBonus">
</div>
</form>
</div>
</div>
<?php
if(isset($_POST['s_bonus'])){
$sbonus = mysqli_real_escape_string($con,$_POST['sbonus']);
if($sbonus!=''){
$query = mysqli_query($con, "select sbonus from mtoken where status='Selled'");
while($row=mysqli_fetch_array($query)){
$dbonus = $row['sbonus'];
$nbonus = $dbonus + $sbonus;
if($nbonus<=5000){
$sqlupdate = mysqli_query($con,"update mtoken set sbonus='$nbonus' where status='Selled'");
if(!$sqlupdate) {
echo mysqli_error($con);
echo ' <script>
alert("Bonus NOT Updated");
</script>';
}
}
if($nbonus>5000){
echo '<script>
alert("Value Exceeded");
window.location.assign("sbonus.php");
</script>';
}
}
}else{
echo '<script>
alert("Please fill all the fields");
</script>';
}
echo '<script>
alert("Surprise Bonus Added To Tokens");
window.location.assign("sbonus.php");
</script>';
}
?>
DB-with-User-Defined + Initial Value
【问题讨论】:
-
不要把你的代码作为图片的链接。把你的代码作为纯文本
-
@nacho 我已将代码粘贴到纯文本中。请帮忙解决。
-
@NJInamdar 我已将代码粘贴为纯文本。请帮忙解决。
-
你又做了一次,不要放图片链接