2014-01-30 50 views
0

我正在使用datalife引擎来创建博客,并且我试图调整默认评级模块。在TPL文件上显示SQL信息

在DLE中,默认评分显示5颗星和投票数。我想根据该信息添加从0到10的实际分数。

在SQL db中,信息存储在表“dle_post_extras”中,它有两列“rating”和“vote_num”。所以我需要最终的结果是=“评级”/(划分)“vote_num”在那个特定的“ID”。

什么,我能弄明白,那些在TPL文件用于显示评级信息[评分]和{}评级,他们是在show.full.php像这样定义

if($row['allow_rate']) { 

     $tpl->set('{rating}', ShowRating($row['id'], $row['rating'], $row['vote_num'], $user_group[$member_id['user_group']]['allow_rating'])); 
     $tpl->set('{vote-num}', "<span id=\"vote-num-id-".$row['id']."\">".$row['vote_num']."</span>"); 


     $tpl->set('[rating]', ""); 
     $tpl->set('[/rating]', ""); 

    } else { 

     $tpl->set('{rating}', ""); 
     $tpl->set('{vote-num}', ""); 
     $tpl->set_block("'\\[rating\\](.*?)\\[/rating\\]'si", ""); 
    } 

我不想改变这部分,我需要能够继续使用它。你能帮我如何查询数据库的这两个值,并将它们相互分开,以及如何显示它们?哦,最后的“得分”只能有一个十进制数。输出只能是为前:7.1,8.6,4.2等等等等

编辑:

好了,我想是这样的

$tpl->set('{rating_num}',$row['rating'] dividing by $row['vote_num']); 

并且这个值四舍五入至小数点后1家

回答

0

好了,解决了这个问题:)

$tpl->set('{rating_num}',number_format (($row['rating']/ $row['vote_num']),1)); 

和使用,只使用{} rating_num模板上的连接le