Thinkphp の保存に失敗した解決策: 1. 対応するコード ファイルを開きます; 2. "$this->typeModel->field('id,name,sort')->data($ data) を使用します。 ->save();」メソッドを使用してデータを更新します。
#この記事の動作環境: Windows 7 システム、thinkphp v5.1 バージョン、Dell G3 コンピューター。
thinkphp の保存失敗の問題を解決するにはどうすればよいですか?
thinkphp save() 更新に失敗しました
1. 失敗事例
$data = I(); $rs = $this->typeModel->data($data)->save();
2. 正しい事例
正确一 $rs=$this->typeModel->field('id,name,sort')->data($data)->save(); 正确二: // $rs=$this->typeModel->where('id='.$data['id'])->field('name,sort')->data($data)->save(); 正确三: // $rs=M('CityCategory')->where('id='.$data['id'])->field('name,sort')->data($data)->save(); //注意: //1.如果新数据与原数据相同则跟新失败 //2.不加field 限制会导致修改失败 //3.需要在field中写主键id和要改的字段, 或where条件中写主键id。
3. 原因分析
フロントデスクから受け取った値 $data 内のすべてのフィールド id pid name path sort には値がありますが、一部の新しいデータは古いデータと同じです。
新しいデータと古いデータに同じフィールドがある場合、フィールドを使用して、変更する必要があるデータを決定する必要があります。フィールドに書かれていると推定され、同じ内容であっても更新されます。
推奨学習: 「最新の 10 件の thinkphp ビデオ チュートリアル 」
以上がthinkphp の保存失敗問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。