0

Kohana PHP フレームワークを使用して Web アプリを開発していますが、行き詰まりました。コントローラに PHP 変数を設定して、ビューで使用します。ページを更新せずに、ビューでこの変数を継続的に更新したいと思います。私がやりたいのは、曲線のデータがこの PHP 変数に格納されている SQL データベースのデータを使用して、リアルタイムでグラフを表示することです。これどうやってするの?この変数をビューで直接更新することは可能ですか (モデルで関数を使用)?

4

1 に答える 1

1

ページをリロードせずに、Javascript を使用してアプリケーションへの AJAX 要求を作成できます。何が起こるかというと、コントローラー/アクションに対してリクエストが行われ、そこでデータベースにクエリを実行し、好きなものを返すことができます。AJAX リクエストは、返されたデータを取得し、それを使って何かを行うことができます (この場合、一部のコンテンツを新しいコンテンツに置き換えます)。

この Javascript コードをページに含める必要があります。この例では、jQuery を使用して AJAX リクエストを作成します。

$.ajax({
  url: /do/something  /* URL of your controller/action */
  success: function(data) { /* the data variable will receive the new content from the controller/action */
    $('#the_id_of_your_html_tag').html(data); /* replace the html content with the new data */
  },
});

Kohana コントローラーには、次のようなものがあります。

class Controller_Do extends Controller_Template
{
  public function action_something()
  {
    $this->auto_render = false;

     // make some call to your database, use your model whatever
     echo 'some string or variable';
     return;
  }
}

ビューの Html は次のようになります (例によると):

<div id="the_id_of_your_html_tag">something</div>
于 2012-12-16T23:19:29.837 に答える