我一直在尋找解決方案以下的網絡,我希望有人能指出我在正確的方向。Codeigniter Twitter樣式流和Ajax
我有一個在Codeigniter中構建的web應用程序,主視圖從模型的帖子流中加載。目前用戶必須刷新頁面以獲取最新內容,這並不理想,我想實現的是流div更新並定期加載新內容。
我是CI和Ajax的新手,我想知道是否有人可以幫助解決方案。
一些代碼...
型號
function stream($uid, $updated, $limit) {
$this->db->cache_on();
$now = microtime(true);
//$sql = "SELECT STATEMENT HERE";
$query = $this->db->query($sql, array($uid, $uid, $updated, $limit));
return $query->result();
}
控制器
function index() {
if($this->session->userdata('logged_in')) {
$session_data = $this->session->userdata('logged_in');
$data['username'] = $session_data['username'];
$data['first_name'] = $session_data['first_name'];
$data['last_name'] = $session_data['last_name'];
$data['avatar'] = $session_data['avatar'];
$data['cover'] = $session_data['cover'];
//Stream Data
$updated = microtime(true);
$limit = 100;
$data['user_id'] = $session_data['id'];
$this->load->library('pagination');
$config['base_url'] = BASE_URL;
$config['total_rows'] = $limit;
$config['per_page'] = 10;
$config['num_links'] = 20;
$this->pagination->initialize($config);
//$this->load->model('post');
$data['results'] = $this->post->stream($data['user_id'], $updated, $limit);
$data['notifications'] = $this->user->notifications($data['user_id']);
$data['userStats'] = $this->user->getUserStats($data['user_id']);
$this->load->view('home_view', $data);
//$this->output->cache(1);
//$this->output->enable_profiler(FALSE);
} else {
//If no session, redirect to login page
redirect('/', 'refresh');
}
}
的看法是複雜的,但在本質上它使用了$results
數組,然後地方foreach循環鑰匙進入引導區,例如
<div class="row">
<div class="col-sm-12">
<div class="panel panel-default">
<div class="panel-heading">
<img src="<?php echo $user_avatar;?>" class="postAvatar">
<h4><?php echo $user_full_name;?><br><small><i class="fa fa-map-marker"></i> <?php echo $relDate.' from '.$post_location ?></small></h4>
</div>
<div class="panel-body bodyText">
<div class="postBody">
<?php echo $formatted;?>
</div>
</div>
</div>
</div>
</div>
有一個例子在那裏與CI,Socket.io和MySQL? –
在這裏你有一個很好的[教程](http://devzone.zend.com/209/writing-socket-servers-in-php/),它向你展示瞭如何在php中使用帶有socket.io的websockets。只適合你的codeigniter數據源。 – WoIIe
@沃爾謝謝哥們! –