1

データベースの更新時にのみページを更新しようとしていますが、その方法がわかりません。

各IDは一意であるため、データベースに保存されているIDを比較することを考えていました.AJAXによって保存または取得された現在の配列をデータベース内のIDと比較する何らかの式を作成すると. しかし、IDを比較して新しい更新かどうかを確認する方法がわかりません

どんな助けでもいただければ幸いです

コントローラ

public function insertJSON()
    {
        $this->load->model("values");
        $queryresults = $this->values->getDb();

        $id = array();
        $arr = array();
        $arr2 = array();


        foreach($queryresults as $row)
        {
            $id[] = $row->id;
            $arr[] =  $row->post;
            $arr2[] = $row->img;
        }

            $data = array();
            $data[] = $id
            $data[] = $arr;
            $data[] = $arr2;

            echo json_encode($data);
    }

意見

 <script type='text/javascript' language='javascript'>
      $('#getdata').click(function () {
        $.ajax({
          url: '<?php echo base_url().'index.php/welcome/insertJSON';?>',
          async: false,
          type: "POST",
          success: function(data) {

            // thought i could do something like
                   if(data.change in database) do bla bla

            var id = data[0];
            var arr = data[1];
            var arr2 = data[2]

          }
        })
      });
    </script>
4

1 に答える 1

3

これを行う簡単な方法があります。セッション変数を作成し、最後の ID を割り当てます。ページよりも、非表示の入力でこのセッション ID を取得します。これで、ajax リクエストを送信するときに、非表示の入力の値を取得して、最後の ID を照会できるコントローラー関数に送信できます。クエリからの最後の ID がセッション ID と等しくない場合は、それ以外の場合はエコー 0 をエコーする必要があります。 ajax リクエストで、応答がコントローラーから来ており、それが 0 より大きいかどうかを確認し、新しい ID でページを変更します。セッションIDをajaxで更新するよりも

于 2013-03-21T04:57:27.220 に答える