typeModel->field('id,name,sort')->data($data)->save();" を使用します。データを更新します。"/> typeModel->field('id,name,sort')->data($data)->save();" を使用します。データを更新します。">

ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp の保存失敗問題を解決する方法

thinkphp の保存失敗問題を解決する方法

藏色散人
藏色散人オリジナル
2021-12-22 11:08:573241ブラウズ

Thinkphp の保存に失敗した解決策: 1. 対応するコード ファイルを開きます; 2. "$this->typeModel->field('id,name,sort')->data($ data) を使用します。 ->save();」メソッドを使用してデータを更新します。

thinkphp の保存失敗問題を解決する方法

#この記事の動作環境: 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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。