做一个类似微博的程序,想知道怎样获取所有我收到的评论

xiaochunhao 2015-09-25 10:30:15
我做一个类似新浪微博的程序,我想获取我收到的评论。因为评论有别人对我发的微博的评论,也有我去别人微博下面发的评论然后别人回复我的评论,请问怎样获取所有这些评论?现在数据表(评论表)有这样几个自字段 :id(评论id),uid(评论发布者),content(评论内容),wid(评论所属微博id)
...全文
107 点赞 收藏 1
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
楼主是不是在做后盾微博的那个项目??我当时是这么改的,你可以参考我的代码注释。最后能够取出“我”发的评论和“我”收到的所有评论,代码如下:
	/**
	 * 展示评论列表
	 */
	public function comment(){

		//重置缓存
		set_msg(session('uid'), 1, true);

		//取出我发的微博的id
		$my_uid = session('uid');
		$wids = M('weibo')->where(array('uid'=>$my_uid))->field('id')->select();

		//取出我参与评论的微博的id
		$comment_db = M('comment');
		$other_wids = $comment_db->where(array('uid'=>$my_uid))->field('wid AS id')->select();
		
		//合并所有需要取出的微博id
		$wids = array_merge_recursive($wids, $other_wids);
		foreach($wids as $k=>$v){
			$wids[$k] = $v['id'];
		}
		$wids = array_unique($wids); //合并后去重复

		//根据wid取出comment表的id,uid,content,time等信息,再把comment表的id取出
		$uids = $comment_db->where(array('wid'=>array('IN', $wids)))->select();
		foreach($uids as $k=>$v){
			$cids[$k] = $v['id'];
		}
		
		//根据comment表的id取出评论
		$db = D('CommentView');
		$where = array('comment.id'=>array('IN', $cids));

		//分页
		$count = $db->where($where)->count();
		import('ORG.Util.Page');
		$page = new Page($count, 10);
		$limit = $page->firstRow . ',' . $page->listRows;

		$comment = $db->where($where)->order('time DESC')->limit($limit)->select();
		
		//分配变量到模板
		$assign = array('count'=>$count, 'comment'=>$comment, 'page'=>$page->show());
		$this->assign($assign);
		
		$this->display();
	}
回复
相关推荐
发帖
PHP
创建于2008-08-27

1.9w+

社区成员

“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
申请成为版主
帖子事件
创建了帖子
2015-09-25 10:30
社区公告
暂无公告