-1

を使用してフォームを送信すると、

<form method="post" action="">

入力の値の少なくとも 1 つを変更すると正常に動作します。つまり、save() 関数が動作し、レコードをデータベースに保存しています。ただし、入力値が変更されていない場合は、save() では false である {} ブロックが実行されます。なぜそうなのか、誰か説明できますか?

4

2 に答える 2

1

次のようなものを使用している可能性があります

if($query->affected_rows()>0){
return true;
}else{
return false
}

データベースを実行した後、SQLクエリを保存します。そのため、フォーム フィールドで変更が行われると、変更が保存され、最初の条件が true になり、true が返されます。しかし、フォーム フィールドに変更が加えられていない場合、つまりフィールドが変更されていない場合、データベースには変更が加えられず、2 番目の条件、つまり else 条件が実行されて false が返されます。

アップデート

コードを投稿していただければ、より明確に説明できます。あなたが投稿したhtmlフォームコードに問題はありません。ただし、保存操作を処理する PHP コードを投稿する必要があります。

于 2013-02-01T21:55:43.970 に答える
-2

古い値をどこかに保持できます。ユーザーがフォームを投稿するときに、何かが変更されているかどうかを確認できます。

于 2013-02-01T21:46:22.180 に答える