2014-03-31 21 views
0

我想從RSEvents的joomla數據庫中獲取類別詳細信息。任何人都可以解釋爲什麼這不起作用:從Joomla數據庫獲取RS Eevents類別名稱

function _getCategorySlug($value) { 
    // Get a db connection. 
    $db = JFactory::getDbo();  
    // Create a new query object. 
    $query = $db->getQuery(true);  
    // Select all articles for users who have a username which starts with 'a'. 
    // Order it by the created date. 
    // Note by putting 'a' as a second parameter will generate `#__content` AS `a` 
    $query 
     ->select($db->quoteName(array('a.*', 'b.id', 'b.ide'))) 
     ->from($db->quoteName('#__categories', 'a')) 
     ->join('INNER', $db->quoteName('#__rseventspro_taxonomy', 'b') 
     . ' ON (' . $db->quoteName('a.id') . ' = ' . $db->quoteName('b.id') . ')') 
     ->where($db->quoteName('b.ide') . ' = '.$db->quote($value));  
    // Reset the query using our newly populated query object. 
    $db->setQuery($query); 
    // Load the results as a list of stdClass objects (see later for more options on retrieving data). 
    $results = $db->loadObjectList(); 
} 
+0

你在哪裏調用函數?還要確保你在函數末尾返回一些東西 – Lodder

+0

oops忘了返回結果! 雖然沒有幫助,但這是_getCategorySlug($ event-> id)返回的內容: '未知列'a'*'in'field list'SQL = SELECT'a'.'''''''''' .''''''' FROM'db_categories' as'a' INNER JOIN'db_rseventspro_taxonomy' as'b' ON('a'.'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''') '.'''' ='41'' – Bulletproof

回答

0

我認爲這可能會幫助你。使用下面的函數可以獲得特定事件的類別。

public function getCategories($id) { 
    $db = JFactory::getDbo(); 
    $query = $db->getQuery(true); 

    $query->clear() 
     ->select($db->qn('id')) 
     ->from($db->qn('#__rseventspro_taxonomy')) 
     ->where($db->qn('type').' = '.$db->q('category')) 
     ->where($db->qn('ide').' = '.$id); 

    $db->setQuery($query); 
    return $db->loadColumn(); 
} 
0

謝謝!這是一個很大的幫助,讓我的地方,我需要(稍加調整):

function getCategories($id) { 
    $db = JFactory::getDbo(); 
    $query = $db->getQuery(true); 

    $query->clear() 
     ->select($db->qn('id')) 
     ->from($db->qn('#__rseventspro_taxonomy')) 
     ->where($db->qn('type').' = '.$db->q('category')) 
     ->where($db->qn('ide').' = '.$id); 
    $db->setQuery($query); 
    $categories = $db->loadColumn(); 
    return implode("_", $categories); 
} 

此外,將是巨大的,找出哪些是錯的我原來的查詢來獲取從#__categories表類的別名