我正在制作一个积分系统。在系统中我现在得到了这样的结果,当人们以5分的价格购买1张票时,他们会从MySQL中失去它。但我不知道如何限制。现在人们可以购买无限积分并且不会停止。唯一发生的事情是他们得到-10分(例子)。我想这样做,如果他们得到0-4分,就不能买票。我使用的代码:
<?php
session_start();
//=============Configuring Server and Database=======
$host = 'localhost';
$user = 'root';
$password = '';
//=============Data Base Information=================
$database = 'login';
$conn = mysql_connect($host,$user,$password) or die('Server Information is not Correct'); //Establish Connection with Server
mysql_select_db($database,$conn) or die('Database Information is not correct');
//===============End Server Configuration============
//=============Starting Registration Script==========
$username = mysql_real_escape_string($_POST['txtusername']);
//=============To Encrypt Password===================
//============New Variable of Password is Now with an Encrypted Value========
$insert = "UPDATE `users` SET `points` = (`points`-5) WHERE `username` = '".$username."'";
mysql_query($insert);
// other codes
$insert = "UPDATE `users` SET `lodd` = (`lodd` +1) WHERE `username` = '".$username."'";
mysql_query($insert);
mysql_query($insert);
header('location: succes.php');
?>
这里是添加1张票并减去5点的代码:
$insert = "UPDATE `users` SET `points` = (`points`-5) WHERE `username` = '".$username."'";
mysql_query($insert);
// other codes
$insert = "UPDATE `users` SET `lodd` = (`lodd` +1) WHERE `username` = '".$username."'";
mysql_query($insert);
mysql_query($insert);
答案 0 :(得分:0)
你可以尝试
$insert = "UPDATE `users` SET `points` = (`points`-5) WHERE `username` = '".$username."' AND `points` >= 5";
然后按照上面的建议检查该行是否受到 mysqli 的影响。如果行受到影响,则表示用户有5个或更多点。