【问题标题】:Display SQL info on TPL files显示 TPL 文件的 SQL 信息
【发布时间】:2014-01-30 17:04:25
【问题描述】:

我正在使用 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']);

这个值四舍五入到小数点后一位

【问题讨论】:

    标签: php sql smarty datalife-engine


    【解决方案1】:

    好的,解决了:)

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

    要使用,只需在模板文件上使用 {rating_num}

    【讨论】:

      猜你喜欢
      • 2013-08-20
      • 2018-06-24
      • 1970-01-01
      • 2014-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多