![](/img/trans.png)
[英]How do you subtract a value on one table with a value from another table in laravel
[英]How to subtract a value from one table while adding to another table?
因此,我在同一個數據庫上運行了2個腳本,但是每個腳本都有自己的表(例如用戶,帖子等),並且它們都有積分系統。
現在,我想做的是使點之間的發送成為可能。 我創建了一個簡單的表單,其中包含要填充的名稱和要點,提交時將發送到另一個處理信息的頁面,從用戶那里取走給定的金額(將檢查會話),然后發送給給定名稱(在其他腳本中注冊)。
好的,在處理積分時,積分將被扣除(如果積分不足,則會出現“積分不足”錯誤),但積分不會記入其他帳戶。 有可能解決這個問題嗎?
代碼段如下:
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('mods/points');
$pointst1 = request_var('pointst', 0);
$bsname1 = request_var('bsname', 0);
if ( $user->data['user_points'] < $pointst1 ){
echo "<b>You don't have enough points</b>";
}
else {
remove_points($user->data['user_id'], $pointst1);
mysql_query("UPDATE users SET points = (points + $pointst1) WHERE name = '$bsname'");
echo "<b>Points tranferred!</b>";
};
?>
幾件事。
首先,我建議您訪問此站點以了解有關SQL提交的信息。 這將有助於確保您不會從一個用戶中刪除點,也不會將其添加到另一用戶中。 在您當前的代碼示例中可能會發生這種情況
http://php.net/manual/en/mysqlnd-ms.transaction.php
其次,似乎這部分正在將php變量作為文本傳遞
mysql_query(“ UPDATE用戶SET points =(points + $ pointst1)WHERE name ='$ bsname'”); 回聲“ 分數已轉移! ”
您可能需要將其更改為
mysql_query("UPDATE users SET points = (points + {$pointst1} ) WHERE name = {$bsname}");
echo "<b>Points tranferred!</b>"
我不是PHP程序員,因此您可以在此處檢查我的邏輯: http : //php.net/manual/zh/language.operators.string.php
希望能幫助到你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.