Я должен написать два оператора SQL для обновления записи, есть ли лучший способ сделать это? - PullRequest
0 голосов
/ 21 декабря 2009

Я хочу обновить таблицу:

$result=mysql_query("select balance from tablename where userid='$userid")or die(mysql_error());
$row=mysql_fetch_assoc($result);
$accountbalance=$row['balance'];
if($accountbalance>$cost)
{
$result=mysql_query("update tablename set balance-'$cost' where userid='$userid")or die(mysql_error());
}
else {
...
}

Понимаете, мне нужно написать два оператора mysql, есть ли лучший способ сделать это?

mysql_query("update users set balance=balance+'$pwbalance'-'$totalprice' where memberid='$memberid' and (balance+'$pwbalance'-'$totalprice')>=0")or die(mysql_error());
$count=mysql_affected_rows();

Почему $ count равен 0, хотя я думаю, что это должно быть 1?

1 Ответ

3 голосов
/ 21 декабря 2009
UPDATE tablename SET balance=balance-$cost WHERE userid=$userid AND balance > $cost
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...