2013-07-30 64 views
0

我使用此代碼從數據庫讀取:,單排(的Joomla框架)

$db = JFactory::getDbo(); 
$query = $db->getQuery(true); 

$query->select(array('category_name', 'category_short_description')); 
$query->from('#__redshop_category'); 
$query->where('category_id = 1'); 

$db->setQuery($query); 

$results = $db->loadObjectList(); 

我怎麼能看一次元素,例如額外的* CATEGORY_NAME *和額外* category_short_description *

這裏也是官方的Joomla維基,但沒有單獨的輸出:http://docs.joomla.org/J2.5:Accessing_the_database_using_JDatabase

這裏我已經在做,但是這不工作: 回聲結果$; - > output:ARRAY echo $ results ['category_name']; - >無輸出,空(在數據庫中的行不是空的)

我該怎麼做?

+0

訪問數據使用'的print_r($結果)'檢查你的變量'$ results'得到什麼。 –

+0

我現在看到我的輸出,這是正確的:ARRAY([0] => STDCLASS OBJECT([CATEGORY_NAME] =>對於childrens [CATEGORY_SHORT_DESCRIPTION] => TEST)) - 可以讀取一次項目? –

+0

然後使用'echo $ results [0] - > category_name;'這會給出正確的結果。 –

回答

2

您可以使用loadObject()代替loadObjectList()只獲得第一行:

$results = $db->loadObject(); 
echo $results->category_name; 

如果你想要一個關聯數組,而不是一個對象,有loadAssoc()

$results = $db->loadAssoc(); 
echo $results['category_name']; 
+0

這工作,謝謝你。關鍵在於:「$ db-> loadAssoc()」 –

1

要提取單你可以用排

$result = $db->loadObject() 

而不是

$results = $db->loadObjectList() 

,然後你可以通過

$result->category_name; 
$result->category_short_description;