最新の tp3.2.3 をダウンロードしましたが、ステートメントの実行時に問題が発生しました
追加または更新する場所です
パラメータエラーは報告されませんが、直接除外されます。私の設定に問題があるのでしょうか?
質問: <1> たとえば、ユーザーテーブルフィールドのユーザー名パスワードを追加した場合、ステートメントは成功しましたが、パスワードのみが挿入されました。
<2> where 条件で、array('username'=>'aaa') を意図的に array('usernames'=>'aaa') として記述しました 結果の SQL は直接フィルタリングされました。空の条件にします。つまり、 select * from user ;
になります。
返信内容:
追加または更新する場所です
パラメータエラーは報告されませんが、直接除外されます。私の設定に問題があるのでしょうか?
質問: <1> たとえば、ユーザーテーブルフィールドのユーザー名パスワードを追加した場合、ステートメントは成功しましたが、パスワードのみが挿入されました。
<2> where 条件で、array('username'=>'aaa') を意図的に array('usernames'=>'aaa') として記述しました
結果の SQL は直接フィルタリングされました。空の条件にします。つまり、 select * from user ; になります。
デバッグがオンになっているため、エラーは報告されますが、フィールド エラーは報告されません。最後の SQL ステートメントを印刷するときに、表示された間違ったフィールドまたは条件がすべてフィルターで除外されました。
モデル ファイル内の sql:echo $this->getLastSql() を出力して、実行ステートメントを確認します。
デバッグモードはオンになっていますか?
これは thinkphp のフィルタリング効果で、add() は要件を満たさないフィールドを除外します。この質問をするということは、ドキュメントを注意深く読んでいないことを意味します。
thinkphp は間違ったフィールドを除外できます。彼は正しいフィールドのみを書き込みます。エラーは報告されません。彼はあなたがこのフィールドを通過しなかったかのようにそれを扱います