$dt = mysql_query("SELECT * FROM `member_territory` mt LEFT JOIN `drug_territory` dt ON mt.mt_ter = dt.t_id");
while($t = mysql_fetch_array($dt)) {
$total +=($t['t_reward']* $t['mt_lev'])*150;
mysql_query("UPDATE `members` SET
`drug_income` = '".$total."',
`drug_incometotal` = `drug_incometotal` + '".$total."',
`wallet` = `wallet` + '".$total."'
WHERE `playerid` = '".$t['mt_playerid']."'");
}
所以这里是我的代码,而不是自我解释,当插入drug_income
时,这是正确的,但是当它被插入drug_incometotal
或wallet
时它是不正确的。
我不知道为什么,我已经尝试了所有知识来解决它!!。
任何想法为什么我得到这个不正确的结果(正如我所说的drug_income
是正确的)只有当我试图在数据库中“+”它时才会返回错误的结果。
答案 0 :(得分:1)
我不想在循环之后只增加一次... - user3740302 1分钟前
好的。所以你应该把你的UPDATE
查询移到循环之外,对吗?
答案 1 :(得分:0)
您可以尝试此修改后的更新查询
mysql_query("UPDATE `members` SET drug_income = ".$total.", drug_incometotal = drug_incometotal + ".$total.", wallet = wallet + ".$total." WHERE `playerid` = '".$t['mt_playerid']."'");
它可能会解决您的问题..