0

我正在做一个积分系统。现在我在系统中得到了,所以当人们以 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);  
4

1 回答 1

0

你可以试试

$insert = "UPDATE `users` SET `points` = (`points`-5) WHERE `username` = '".$username."' AND `points` >= 5";

然后按照上面的建议检查该行是否受到mysqli的影响。如果该行受到影响,则意味着用户有 5 分或更多分。

于 2012-12-12T15:45:20.577 回答