我正在使用 datalife 引擎制作博客,并且正在尝试调整默认评级模块。
在 DLE 中,默认评级显示 5 星和投票数。我想根据该信息添加一个从 0 到 10 的实际分数。
在 SQL db 中,信息存储在表“dle_post_extras”中,它有两列,“rating”和“vote_num”。所以我需要最终结果是那个特定的“id”中的=“rating”/(dividing)“vote_num”。
据我所知,tpl 文件中用于显示评级信息的 [rating] 和 {rating},它们在 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", "" );
}
我不想更改这部分,我需要能够仍然使用它。你能帮我如何在数据库中查询这两个值并将它们一分为二,以及如何显示它们吗?哦,最后的“分数”只能有一位小数。输出只能用于 ex:7.1、8.6、4.2 等
编辑:
好的,所以我想要这样的东西
$tpl->set( '{rating_num}',$row['rating'] dividing by $row['vote_num']);
并且这个值四舍五入到小数点后 1