お世話になります。どうかご教授お願い申し上げます。

Mysql、php、smartyを利用したサイトを作成しております。Proudct_id毎に表示するページ(smarty)で、以下の様なテーブルtbl_product_checkを使用しproduct_idが同じchecker_nameをsmary側で抽出したいと考えております。

例えば、product_idが533のページではsmarty側で533(zen、joice、john)、そしてproduct_idが514のページではsmarty側で514(james、zen、joice)、同様に532では532(zen、joice)という名前(checker_name)を表示させたいのですが、それに必要となるsmarty、およびphpでの記述方法をご指導頂けませんでしょうか。

*tbl_product_check

(フィールド名)
product_checker_id
product_id
checker_name
member_id

        0   533 zen   190    
        1   514 james 189   
        2   533 joice 191   
        3   532 zen   190        
        4   514 zen   190        
        5   532 joice 191   
        6   514 joice 191   
        7   533 john  192   

追記
himakuma様、

いろいろと試しておりますが、当フレームワークの記述方法で以下の様な記述にたどり着きました。ただ機能しておりません(エラーは出ませんが、何も表示されません)。どこに問題があるかご指摘頂けませんでしょうか。

PHP:

$objFormParam = new SC_FormParam_Ex();
    $product_id = $objFormParam->getValue('product_id');
    $objQuery =& SC_Query_Ex::getSingletonInstance();
    $checkerName = $objQuery->getOne('SELECT checker_name FROM tbl_product_check where product_id =  ?', array($product_id)); 
    $results = array();
        foreach ($checkerName as $id) {
            $results[$id['product_id']][] = $id['product_id'];
        }
        return $results;

SMARTY:

{foreach from=$checkerName item=product_id name= checker_name}
    {$checkerName [$checker_name]}
{/foreach}