mysql_queryがNULLを返した場合、それはPHPのバグになります。実際にNULLを返していることをどうやって知ることができますか?
更新ステートメントの場合、mysql_queryはTRUEまたはFALSEのみを返す必要があります。したがって、エラーチェックコードは問題ありません。何が悪かったのかを見つけるには、他の関数を呼び出す必要があります-mysql_error()は、何が悪かったのかについての宣伝文句を提供します。したがって、falseブロック内にmysql_error()の値を出力します。このように:
echo 'failed. SQL Err: '. mysql_error()
そうすれば、「レコードがどのように更新されたかについての手がかりが得られるでしょうが、戻り値はfalseです」。それは起こらなかったはずです。