MySQL Updateコマンドは、条件に一致する行がない場合、または一致する行が実際に変更されていない場合に影響を受けるゼロ行を報告します。mysql影響を受けていない行の数は有益ではない
ユーザは自分のプロファイルを編集したいので、DBに行"WHERE UserID='$userid'"
を照会し、編集するためのテキストフィールドに各列の値とともにフォームを表示します。
私はUpdateコマンドを実行し、成功のために1
、失敗の場合は0
を期待して、mysqli_affected_rows
を確認します。彼が実際に何かを変更しなかった場合、それは0
に戻ってきます。私は誤ったエラー報告を受け取ります。
私はこれを避けるためにいくつかの面倒な方法があると思っていますが、誰かが簡単に解決できると思っていますか?
常に更新されるupdated_atフィールドを追加できます。かなり一般的です。 – Christopher
ユーザーに通知しないでください。または、特定の通知を追加する - > "あなたは何も変更していない" Christopherが提案したようにupdated_atフィールドを追加してチェックしてください。 – Tim
はい、LastUpdate列は、私が考えていた「面倒な」アプローチです。私はちょうどコードを乱雑にしてDBを拡張することが嫌いです – joseph4