我正在使用 Kohana PHP 框架开发一个 Web 应用程序,但我被卡住了。我在控制器中设置了一个 PHP 变量以在视图中使用它。我想在不刷新页面的情况下不断更新视图中的这个变量。我想做的是使用 SQL 数据库中的数据实时显示图表,其中曲线数据存储在这个 PHP 变量中。我怎样才能做到这一点?是否可以直接在视图中更新这个变量(使用我在模型中的函数)?
问问题
653 次
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 回答