IFステートメント内でデータベースを更新しようとしていますが、動作していないようです。 email_sentは1に変更されません。私のステートメントは正しいですか?IFステートメントでデータベースを更新する
$result2 = mysql_query ("SELECT * FROM stock_control WHERE id = '$id' ");
while ($row1 = mysql_fetch_array($result2))
{
$item=$row1['item'];
$location=$row1['location'];
$quantity=$row1['quantity'];
$threshold=$row1['threshold'];
$emailSent=$row1['email_sent'];
}
if ($quantity <= $threshold && $emailSent == 0) {
mysql_query("UPDATE stock_control SET quantity=quantity - '$n_quantity',
email_sent = '1' WHERE id = '$id' ");
} else {
mysql_query("UPDATE stock_control SET quantity=quantity - '$n_quantity' WHERE
id = '$id' ");
}
email_sentは整数か文字列ですか。 '' 1 ''は文字列であるためです。あなたはちょうど '1'を使用する必要があります –
@JuanCarlosOropezaは問題ではない、MySQLは自動的にタイプを変換する –
多分あなたはより良い理解のためにスクリプト全体を表示する必要があります。たとえば、$ n_quantity変数はどこから来ますか? –