我在一个 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' . ' 其中 r.created_by='.$user->id.' a.published=1 order by a.created desc'; $db->setQuery($query, 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 " 代表已验证"; } 别的 { echo " Rep is not Verified {SHOW_FOR profile_owner} 如何获得验证{/SHOW_FOR}{HIDE_FOR profile_owner} 这是什么意思?{/HIDE_FOR}"; 回声“”; }
麻烦的是,如果有人用 id '3' 参加过测试,它会说他们已经过验证。如果 quiz_id 等于“3”,并且 created_by 字段与$user
. 我的代码取自原始插件,对于这么小的功能甚至可能不需要所有代码,不胜感激帮助简化!
数据库表截图