2

私は Joomla サイトで作業しており、ユーザーがプログラムで特定のクイズを完了したときに、プロファイルに検証グラフィックとテキストを表示したいと考えています。ほとんどのコードが完成しましたが、やりたいことができません。ここに私が持っているものがあります:

        $db = &JFactory::getDBO();

        $uri = JURI::base();
        $my =& JFactory::getUser();
        $user =& CFactory::getActiveProfile();

        $query = 'distinct(a.id)、a.title、a.alias、a.description、a.created、a.responses、c.title をカテゴリとして選択'
            . ' from #__quiz_quizzes a left join #__quiz_categories c on a.catid=c.id left join #__quiz_responses r on a.id=r.quiz_id'
            . ' where r.created_by='.$user->id.' a.published=1 order by a.created desc';
        $db->setQuery($クエリ, 0, 10);
        $items = $db->loadObjectList();
            $menu = &JSite::getMenu();
            $mnuitems = $menu->getItems('link', 'index.php?option=com_communityquiz&view=quiz');
            $itemid = isset($mnuitems[0]) ? '&Itemid='.$mnuitems[0]->id : '';
    if (strpos($itemid,'3')) {
    echo " Rep is Verified";
    } そうしないと {
    echo "担当者は認証されていません {SHOW_FOR profile_owner} 認証を受ける方法{/SHOW_FOR}{HIDE_FOR profile_owner} これはどういう意味ですか?{/HIDE_FOR}";
    エコー "";
    }

問題は、誰かが ID '3' でテストを受けた場合、検証済みと表示されることです。quiz_id が「3」に等しく、created_by フィールドが$user. 私のコードは元のプラグインから取られたものであり、そのすべてがそのような小さな機能には必要ないかもしれません.合理化を助けていただければ幸いです! データベース テーブルのスクリーンショット

4

1 に答える 1

0

ここ Stack Overflow の他のフォーラム エントリの組み合わせを使用して見つけたと思います。これは機能します:

    $user   =& CFactory::getActiveProfile();
    $result = mysql_query("SELECT COUNT(*) AS num_rows FROM hxlth_quiz_responses WHERE created_by='{$user->id}' and quiz_id='3' and score='3' LIMIT 1;");
    $row = mysql_fetch_array($result);
    if($row["num_rows"] > 0){
    echo "<div style='margin: 0 15px 15px 0; padding: 5px; box-shadow: rgba(0,0,0,0.4) 1px 1px; border: 1px solid #cccccc;'><img src='/images/check1.jpg' align='absmiddle' width='22' height='21' /> Rep is Verified</div>";
    } else {
    echo "<div style='margin: 0 15px 15px 0; padding: 5px; box-shadow: rgba(0,0,0,0.4) 1px 1px; border: 1px solid #cccccc;'><img src='/images/x1.jpg' align='absmiddle' width='21' height='21'> Rep is not Verified {SHOW_FOR profile_owner}<a href='index.php?option=com_communityquiz&view=quiz&task=respond&id=3'><font size='1'> How to get verified</font></a>{/SHOW_FOR}{HIDE_FOR profile_owner} <a href='index.php?option=com_communityquiz&view=quiz&task=respond&id=3'><font size='1'> What does this mean?</font>{/HIDE_FOR}";
    echo "</a></div>";
    }

グラフィックとテキストが正しく表示されるようになりました。実際にクイズに合格したことを確認するために、AND スコアのバリアントも挿入しました。

于 2012-12-08T07:07:19.263 に答える