Обновление не работает, как должно быть в MySQL - PullRequest
0 голосов
/ 22 декабря 2009
 echo $totalprice;
echo "<br/>";
echo $shortfall;
echo "<br/>";
echo $unitprice;
echo "<br/>"; 

Я получил

24 80 0,3

Затем была выполнена следующая команда.

// обновить запрос

Однако только

TOTAL_PRICE

было изменено (стало 0,00), в то время как другие значения, такие как

unit_price

остаться без изменений. Но другие значения, такие как

unit_price

следует изменить.

TOTAL_PRICE

это

без знака когда total_price-pricebalance сделан, он становится 0,00. Так он отказывается от вычета $ totalprice? Есть идеи?

1 Ответ

0 голосов
/ 22 декабря 2009

Почему вы используете AND s в своем запросе ОБНОВЛЕНИЯ?

mysql_query("update piecework set total_price=total_price-pricebalance+$totalprice, quota=quota-shortfall+$shortfall, shortfall=$shortfall, unit_price=$unitprice, pricebalance=$totalprice where piecework_id='$pieceworkid' and publisher=$memberid and (pricebalance-$totalprice)>=0")or die(mysql_error());

Или с лучшей читаемостью:

UPDATE piecework SET total_price = total_price - pricebalance + $totalprice,
                     quota = quota - shortfall + $shortfall,
                     shortfall = $shortfall,
                     unit_price = $unitprice,
                     pricebalance = $totalprice
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...