ホームページ  >  に質問  >  本文

thinkphp5.1 ajax のデータ更新に問題があります。アドバイスをお願いします。

AJAX を使用して更新するデータを送信した後、コントローラーで受信されたデータを知りたいのですが、それはテーブル内のデータですか?それとも判断材料なのでしょうか?


public function update(Request $request){

$status=0;

$id = $request->get ( 'id');

$data = $this->request->param();

// dump($data); ここのデータ量はどれくらいですか? dumpでは動作せず、実行できないのですが?

$a=Db::name('dh')->where('id',$id)->update($data);

if (!$a ) {

$message = '参加できませんでした。 ';

} else {

$status = 1;

session('admin', $a); 正常に参加しました。 ';

} }

return ['ステータス' => $status, 'メッセージ' => $message];

}

#-------------------------------------- -----------------------------------------


圐圙圐圙2368日前1947

全員に返信(3)返信します

  • PhpNewer

    PhpNewer2018-05-19 17:12:33

    $data は、フロントエンドによって ajax を通じて送信されたフォームのすべてのデータです。これは連想配列です。 tp5 はデフォルトで json を使用します。$data 内のデータを確認するためにダンプ出力を使用していますか?

    updata() はここで mysql の SQL ステートメントを実行すべきではないのですが、なぜ $data が直接実行されるのでしょうか?

    返事
    0
  • 圐圙

    圐圙2018-05-19 14:13:21

    $name= $this->request->param('name');
    $add= $this->request->param('add');
    $time= $this->request ->param('update_time');
    $a = Db::name('dh')
    ->where('id',$s)
    ->data(['name' => $ name, a 'add' = & gt; add,
    'update_time' = & gt; $ time
    ])
    - & gt; このように電話する必要がありますか?変更するフィールドがたくさんある場合はどうすればよいですか?

    返事
    0
  • 圐圙

    それでは上記のように変更してみますが、うまくいきませんか?欄が多い場合は一つ一つ受け取って書き込まなければならないのでしょうか?

    圐圙 · 2018-05-20 13:33:14
  • キャンセル返事