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 に答える