2011-04-20 14 views
0

我想使用Joomla框架在主內容表中創建一個[http://docs.joomla.org/How_to_use_the_JTable_class ]這工作正常,除了一些數據來自發布的變量和一些從上傳文件時發生的邏輯(存儲jpg的隨機圖像名稱)添加一個名稱值對發佈的數據joomla消耗並插入到數據庫

$ data = & JRequest :: get('post 「);

這需要引用的值,我想添加到這個數組或對象我的領域。我有新的記錄,但列圖像的代碼,並沒有得到我的字符串插入。

我試圖做類似$data=&JRequest::get('post'); $newdata=(array)$data; array_push($newdata,"images"=>"Dog");

我做newdata數據是裁判所張貼的變量,我懷疑不會有脫穎而出讓我值添加到$數據。 我是一個flash傢伙,通常不是php,我的知識讓我失望。

感謝所有幫助

+0

你想說什麼形式$數據= JRequest ::得到(」後'); ? &JRequest :: get('post');是不是數組? – mahadeb 2011-04-20 18:18:01

+0

$ data ['images'] =「狗」; 這似乎爲我工作,感謝您的幫助mahadeb。我認爲這是一個數組或stdObject不確定。 – landed 2011-04-20 18:25:09

+0

非常歡迎。畢竟我們是爲了彼此:) – mahadeb 2011-04-20 18:27:22

回答

1

權,第一件事:

$data=&JRequest::get('post'); 

$的數據是一個數組,你沒有投它。

$data['images'] = 'cats'; 

如果使用普通的SQL做的插入,那麼你會做這樣的事情來獲得最後插入的ID例如:對另一個元素在評論描述添加到陣列中做到這一點你剛插入的行的id:

$db = $this->getDBO(); 
$query = 'Some sql'; 
$db->setQuery($query); 
if (!$db->query()) { 
    JError::raiseWarning(100, 'Insert failed - '.$db->getErrorMsg()); 
} 
$id = $db->insertid(); 

如果你是在開發的Joomla我建議你使用提供給您,而不是mysql_insert_id()的數據庫功能;

[編輯]

如果你想使用商店,那麼你可以得到一個像最後插入的ID,以便:

$row->bind($data); 
$row->check(); 
$row->store(); 
$lastId = $row->id; 
+0

嗨 - 我想用商店作爲它的J框架和很多更清潔,並做場清理等,但它只是沒有爲我工作。來想一想,它也沒有提交這個領域,所以它可能工作,現在我已經修復了這個數組,它應該開始再次確定。感謝您的回答。 – landed 2011-04-22 08:22:06

相關問題