织梦CMS获取问答中问题的数量函数get_total()


返回值:数组

位置:/ask/model/mquestion.php

  在织梦问答系统里面分为未解决的问题和已经解决的问题,也就是当会员发布问题后会在问题表dede_ask的status字段里面有设置为零,即刚发布的问题为未解决的,其它情况表示已经解决的问题。在问答前台会要获取已解决的和未解决的问题,所以,需要编写一个函数来获取未解决的问题和已经解决的问题数量,也就是本教程里面讲的这个函数,分析到这里相信这个问题就容易了。

  我们把获取到的未解决的和已经解决的问题分别存储到数组$data里面的键solving和solved里面,所以,先定义一个空数组:

    $data['solving'] = 0; //未解决的问题数
    $data['solved'] = 0;  //已解决的问题数

  然后,查询数据库表dede_ask: 

$query = "SELECT status,COUNT(status) AS dd FROM `dede_ask` GROUP BY status ";


  如果status值为零的将存储到数组 $data[‘solving’]里面,否则,存储到 $data[‘solved’]里面

        $this->dsql->Execute('me',$query);
        while($tmparr = $this->dsql->GetArray())
        {
            if($tmparr['status']==0)
            {
                $data['solving'] = $tmparr['dd'];
            }else{
                $data['solved'] += $tmparr['dd'];
            }
        }


  最后,返回数组: 

$data