Php 计算给定产品的审核总数

Php 计算给定产品的审核总数,php,mysql,zen-cart,Php,Mysql,Zen Cart,我试图获取一个产品页面模板的总评论数,出于某种原因,我总是得到一个结果,不管怎样,即使至少有两个 有人能帮忙吗 我编写了以下代码 $reviews_query_raw = "SELECT r.reviews_id, rd.reviews_text as reviews_text, r.reviews_rating, r.date_added, r.customers_name FROM " . TABLE_REVIEWS . " r, " . TABLE_

我试图获取一个产品页面模板的总评论数,出于某种原因,我总是得到一个结果,不管怎样,即使至少有两个

有人能帮忙吗

我编写了以下代码

$reviews_query_raw = "SELECT r.reviews_id, rd.reviews_text as reviews_text, r.reviews_rating, r.date_added, r.customers_name
                    FROM " . TABLE_REVIEWS . " r, " . TABLE_REVIEWS_DESCRIPTION . " rd
                    WHERE r.products_id = :productsID
                    AND r.reviews_id = rd.reviews_id
                    AND rd.languages_id = :languagesID " . $review_status . "
                    ORDER BY r.reviews_id desc";

$reviews_query_raw = $db->bindVars($reviews_query_raw, ':productsID', $_GET['products_id'], 'integer');
$reviews_query_raw = $db->bindVars($reviews_query_raw, ':languagesID', $_SESSION['languages_id'], 'integer');
$reviews_split = new splitPageResults($reviews_query_raw, MAX_DISPLAY_NEW_REVIEWS);
$reviews = $db->Execute($reviews_split->sql_query);
然后在页面的后面:

<?php echo $reviews->RecordCount(); ?>


它正在返回一个。即使我可以在phpMyAdmin中运行相同的查询并获得实际结果。

您已经将MAX\u DISPLAY\u NEW\u REVIEWS设置为1。splitPageResults类对原始查询进行分页,因此转换后的查询在末尾有类似“LIMIT 0,1”的内容。要获取评论总数,请使用:

<?php echo $reviews_split->number_of_rows;?>

要知道使用当前设置的“最大显示”和“新建检查”显示所有检查需要多少页,请使用:

<?php echo $reviews_split->number_of_pages;?>


您可以在配置->最大值/最小值-/p>中的管理区域更改最大显示新评论,您在哪里看到1的结果?我在查询中没有看到任何
COUNT(*)
aggregate。我正在使用ZenCart函数:$reviews->RecordCount()来显示结果。我应该做些别的事情吗?我猜“1”是一个真实的结果-就像资源指针上的返回值true,在输出时转换为字符串-但是,在本例中,它是针对
$db->Execute()
返回的任何内容。我猜它需要某种迭代器,如果它是数组,则需要一个
count()
。@CD001:但我不确定在使用ZenCart的“RecordCount”过程后是否应该得到该结果,而在其他页面上也使用了该过程。