<?php
class MiniController extends Controller
{
const PAGE_SIZE=20;
public $is_me;
public function actionIndex()
{
$uid = Yii::app()->user->id;
$model = new Mini();
//初始化
$criteria=new CDbCriteria;
$criteria->select = "{{friend}}.fuid as uid,t.*";
$criteria->order='id';
$criteria->join = "left join {{friend}} on {{friend}}.fuid = t.uid ";
$criteria->condition="{{friend}}.uid=:uid";
$criteria->params=array(':uid'=>$uid);
$gid = Yii::app()->request->getQuery('gid');
if(!empty($gid))
{
$criteria->join .= " left join {{friend_belong_group}} on {{friend_belong_group}}.uid = {{friend}}.uid ";
$criteria->addCondition('gid='.$gid);
}
//取得数据总数,分页显示
$total = $model->count($criteria);
$pages=new CPagination($total);
$pages->pageSize=self::PAGE_SIZE;
$pages->applyLimit($criteria);
//获取数据集
$mini_list = $model->findAll($criteria);
$data = array(
'mini_list'=> $mini_list,
'pages'=> $pages,
);
$this->render('index',$data);
}
/**
* 我的心情
*/
public function actionMy()
{
$uid = Yii::app()->user->id;
$model = new Mini();
//初始化
$criteria=new CDbCriteria;
$criteria->order='ctime DESC';
$criteria->condition="uid=:uid";
$criteria->params=array(':uid'=>$uid);
$mini = $model->find($criteria);
$smile = new Smile();
$icon_list = $smile->getIconList();
$date = Yii::app()->request->getQuery('date');
if(!empty($date))
{
$criteria = $model->fileaway($date,$criteria);
}
//取得数据总数,分页显示
$total = $model->count($criteria);
$pages=new CPagination($total);
$pages->pageSize=self::PAGE_SIZE;
$pages->applyLimit($criteria);
//获取数据集
$mini_list = $model->with(array('reply'))->findAll($criteria);
$data = array(
'mini_list'=> $mini_list,
'pages'=> $pages,
'mini'=> $mini,
'icon_list' =>$icon_list,
);
$this->render('my',$data);
}
/**
* 我的心情
*/
public function actionAll()
{
$uid = Yii::app()->user->id;
$model = new Mini();
//初始化
$criteria=new CDbCriteria;
$criteria->order='ctime DESC';
$date = Yii::app()->request->getQuery('date');
if(!empty($date))
{
$criteria = $model->fileaway($date,$criteria);
}
//取得数据总数,分页显示
$total = $model->count($criteria);
$pages=new CPagination($total);
$pages->pageSize=self::PAGE_SIZE;
$pages->applyLimit($criteria);
//获取数据集
$mini_list = $model->findAll($criteria);
$data = array(
'mini_list'=> $mini_list,
'pages'=> $pages,
);
$this->render('my',$data);
}
/**
* 好友的心情
*/
public function actionFriends()
{
$uid = Yii::app()->request->getQuery('uid');
$mid = Yii::app()->user->id;
if($uid == $mid)
{
$this->redirect(array('my'));
}
$model = new Mini();
//初始化
$criteria=new CDbCriteria;
$criteria->order='ctime DESC';
$criteria->condition="uid=:uid";
$criteria->params=array(':uid'=>$uid);
$date = Yii::app()->request->getQuery('date');
if(!empty($date))
{
$year = $date[0].$date[1].$date[2].$date[3];
$month = $date[4].$date[5];
$start = mktime(0,0,0,$month,1,$year);
$end = mktime(0,0,0,$month+1,1,$year);
$condition = "$start < ctime AND ctime < $end";
$criteria->addCondition($condition);
}
//取得数据总数,分页显示
$total = $model->count($criteria);
$pages=new CPagination($total);
$pages->pageSize=self::PAGE_SIZE;
$pages->applyLimit($criteria);
//获取数据集
$mini_list = $model->findAll($criteria);
$data = array(
'mini_list'=> $mini_list,
'pages'=> $pages,
);
$this->render('my',$data);
}
public function actionDoAddMini(){
$content = Yii::app()->request->getPost('content');
if( empty($content) ){
echo -1;
return false;
}
$model = new Mini();
//TODO 检测空白输入
$model->content = $content;
$add = $model->save();
if( $add ){
echo $model->replaceContent($content);
}else{
echo -1;
}
}
/**
* doDeleteMini
* 删除mini
* @access public
* @return void
*/
public function doDeleteMini( ){
$id = Yii::app()->request->getPost('id');
$model = new Mini();
//TODO 检测空白输入
$mini = $model->findByPk($id);
if( $mini->delete()){
echo 1;
}else{
echo -1;
}
}
}
分享到:
相关推荐
MvcPager分页示例MVC2.0源码 MvcPager分页示例MVC2.0 开发环境:VS2008SP1+MVC2.0+MSSQL2005 ASP.NET MvcPager 1.3版发布(2010-3-30) MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展...
Ajax无刷新分页示例源码 程序介绍: 程序使用jquery方法提交请求,处理后将数据库绑定到页面中。 Ajax无刷新分页示例源码 程序介绍: 程序使用jquery方法提交请求,处理后将数据库绑定到页面中。 Ajax无...
"ecshop后台分页示例代码"是针对ECShop后台进行分页功能实现的一个示例,下面我们将详细探讨这个主题。 首先,`article.php`是ECShop后台管理文章时的核心文件,其中包含了处理文章数据逻辑的部分。在这个示例中,...
"js真假分页示例"是关于如何使用JavaScript(特别是jQuery)实现无刷新分页的一个教程。这种技术允许用户在不重新加载整个页面的情况下浏览多页内容,提高用户体验并减少服务器负担。 "真假分页"的概念在前端开发中...
本项目"JSP分页示例完整版"提供了一个完整的Java Server Pages (JSP) 分页解决方案,下面将详细介绍其关键知识点。 1. **JSP(Java Server Pages)**:JSP是Java平台上的服务器端脚本语言,用于创建动态web页面。...
"八套静态页数字分页示例"提供了八种不同的数字分页实现,这些示例对于网页开发者来说是非常宝贵的资源,能够帮助他们理解和学习如何在自己的项目中应用数字分页。 首先,我们来讨论“数字分页”的概念。数字分页...
"GridView高效分页示例"就是一种优化策略,它避免了使用存储过程,而是采用更直接和高效的方法。 首先,我们要理解传统分页的问题。在默认情况下,GridView会一次性获取所有记录,然后在客户端进行分页,这显然对...
本篇将深入探讨JavaScript实现分页的相关知识点,包括前台分页、客户端分页、分页机制以及相关的JavaScript代码示例。 首先,我们要理解什么是分页。在Web应用中,分页是将大量数据分成多个小部分(每部分通常称为...
"分页-表格示例"这个主题主要关注如何在表格中实现分页功能。 分页通常用于数据库查询结果、电子表格、论坛帖子等场景。表格是数据展示的常见方式,尤其当数据具有多列和多行时,分页可以使用户更容易地管理和查看...
**JSP AJAX分页示例程序详解** 在Web开发中,分页是一种常见的用户界面功能,用于处理大量数据的展示,提高用户体验。JSP(JavaServer Pages)与AJAX(Asynchronous JavaScript and XML)结合使用,可以实现无刷新...
这个名为"分页示例.zip"的压缩包文件很可能包含了一个关于如何使用分页功能的实例,可能是通过JavaScript库jQuery实现的。下面将详细讨论分页的基本原理、jQuery分页插件以及在实际开发中的应用。 分页的基本原理...
Pager-taglib是由Java开发的开源项目,它提供了自定义的JSP标签来处理分页逻辑。开发者无需编写复杂的Java代码,只需在JSP页面中使用这些标签,就能轻松实现分页功能。这大大简化了前端与后端的交互,提高了开发效率...
SQL2008查询分页示例,用临时表,通过ROW_NUMBER()来分页
开发者可以通过传入各种选项来自定义分页的样式和行为,如页码显示方式、链接样式、是否启用AJAX分页等。源码中的`_Layout.cshtml`和`Index.cshtml`文件将展示具体的实现方式。 在MvcPager的配置过程中,开发者还...
在这个"三层Gridview分页示例源码20130227"中,我们可以深入学习如何在Web应用中有效地实现分页功能。 首先,三层架构包括表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。表现层主要负责与用户交互,业务...
"mypaper分页示例(仿拍拍分页)"是一个专为Visual Studio 2005设计的项目,旨在提供一个优化的分页界面,模仿知名电商平台拍拍网的分页效果。这个项目包含了两个关键文件:TestMyPager和MyPagerControl,它们分别...
在这个"dwr分页示例(jsp)"中,我们将探讨如何利用DWR在JSP页面上实现动态的数据分页功能,这在大数据量展示时尤为重要。 首先,我们需要理解DWR的基本工作原理。DWR通过在客户端和服务器之间建立一个安全的通道,...
Flex3是一种基于ActionScript3的开源框架,用于构建富互联网应用程序(RIA)。它提供了一整套组件库,包括用户界面元素、数据绑定和图形绘制工具,使得开发者可以创建交互性强、视觉效果丰富的Web应用。在Flex3中...
在“pagination 分页示例 简洁版 注释 最新”的标题和描述中,我们可以推测这是一个关于分页实现的简洁代码示例,可能包含了最新的优化或改进。下面我们将深入探讨分页的原理、实现方式以及相关的编程知识点。 1. *...