我正在制作一个应用程序,可以通过浏览器远程查看记录和报告。我已经使用 cakePHP 使应用程序及其工作正常,但我有一个小问题,因为应用程序不做任何插入它只是读取数据,我想要当用户打开视图并插入记录时表,它应该更新所有打开的客户端,而不是用户刷新页面来获取新记录。是否有实际工作的 cakePHP websocket 插件?我们的虚拟主机不允许安装程序或添加 apache 模块,因此 nodejs 或类似的解决方案在这里不适用。
我正在寻找一个纯粹的 php 和 javascript 实现,您只需将应用程序文件上传到网络服务器并运行一切。您不必在 apache 或其他东西上运行、安装附加功能或进行任何配置......上传文件后
这是我的一个控制器(BooksController.php)中的一个函数,用于将数据检索到视图中
public function list_books()
{
$this->Books->recursive = 0;
$this->paginate = array('order' => array('Serial_No' => 'DESC'));
$this->set('All_Books', $this->paginate());
}
这是我的一个视图(list_books.ctp),它在分页的表格中显示数据。
<div class="row-fluid">
<div class="span12">
<?php echo $this->Session->flash() ?>
<h4><?php echo __('All Books') ?></h4>
<hr>
<table class="table table-bordered">
<thead>
<tr> <th><?php echo __('Serial No') ?></th>
<th><?php echo __('Title') ?></th>
<th><?php echo __('Author') ?></th>
<th><?php echo __('Publisher') ?></th>
<th><?php echo __('Category') ?></th>
<th><?php echo __('Section') ?></th>
<th><?php echo __('Available') ?></th>
</tr>
</thead>
<tbody>
<?php foreach( $All_Books as $book ){ ?>
<tr>
<td><?php echo $this->Html->link(__($book['Book']['Serial_No']),'/books/view/'.$book['Book']['Serial_No']) ?></td>
<td><?php echo $book['Book']['Title'] ?></td>
<td><?php echo $book['Book']['Author'] ?></td>
<td><?php echo $book['Book']['Publisher'] ?></td>
<td><?php echo $book['Book']['Category'] ?></td>
<td><?php echo $book['Book']['Section'] ?></td>
<td><?php echo $book['Book']['Available'] ?></td>
</tr>
<?php } ?>
</tbody>
</table>
<?php echo $this->Paginator->prev('« Previous', null, null, array('class' => 'disabled'));
echo $this->Paginator->numbers();
echo $this->Paginator->next('Next »', null, null, array('class' => 'disabled'));
echo $this->Paginator->counter(array(
'format' => 'Page {:page} of {:pages}, showing {:current} records out of
{:count} total, starting on record {:start}, ending on {:end}'
));
?>
</div>
</div>
我可以在我的视图、控制器或模型上添加什么来使视图自动更新?这可以使用ajax来实现吗?