从具有相同竞赛ID但唯一用户ID的数据库中提取视频

时间:2013-05-08 21:34:29

标签: php mysql codeigniter activerecord

嗯,我以为我已经弄明白了,但证明确实很难,所以我要解释我的问题可能太详细,希望有人可以帮助我。我正在使用Codeigniter,所以我想努力解决这个问题的基于记录的主动解决方案。

我正在创建一个video voting site,我希望用户能够一次对2个视频进行投票。每个用户应该只能对特定视频进行一次投票(已经找到此部分),并且视频需要具有相同的竞赛视频,因为视频已上传到竞赛中。

我有一张名为“视频”的表格。我需要拉出2个具有相同contestId的随机视频,但是比赛Id不会作为变量输入到函数中,因为它应该是随机的。我正在运行一个检查数据库表的查询,以查看登录用户已经投票的视频,并且它反馈了一个简单的数组,我使用“where_not_in”将其输入此查询。所以我想我唯一的问题是确保被调用的2个视频具有相同的contestId。

到目前为止我所拥有的东西,它只是遗漏了我们提出的任何内容,以使得竞赛场地总是与两个被拉的记录相匹配......

$this->db->where_not_in('id', $excludedVids);
    $this->db->order_by('id', 'RANDOM');
    $query = $this->db->get('videos', 2);
    $data = array();

    foreach ($query->result() as $row) {
    $data[] = array(
        'id' => $row->id,
        'filename' => $row->filename,
        'added' => $row->added,
        'userId' => $row->userId,
        'contestId' => $row->contestId,
        'complete' => $row->complete
    );
    }
    return $data;

0 个答案:

没有答案