2014-08-27 63 views
0

我在JTable中創建一個臨時列中的Joomla爲如下一些任務:上進行更新操作未知列

function __construct(&$db) 
{ 
    parent::__construct('#__tbl', 'id', $db); 

    $id = JRequest::getVar('id'); 

    if($id!=""){ 
     //Initialize variables. 
     $options = array(); 

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

     // Select some fields 
     $query->select('b.fkcategory AS val'); 

     $query->from('#__tbl AS a'); 
     $query->join('left', '#__tblb AS b ON a.fkq=b.id'); 
     $query->where('a.id='.$id); 

     // Get the options. 
     $db->setQuery($query); 

     $row = $db->loadObject(); 

     $this->fkcategory = $row->val; 
    } 

現在,當我保存數據,我得到如下錯誤:

JDatabaseMySQLi::query: 1054 - Unknown column 'fkcategory' in 'field list' 
SQL=UPDATE `cokic_tbl` SET name`='xxx',`gender`='0',`phone`='xxx', 
`email`='[email protected]',`city`='xxx',`fkcountry`='6',`fkq`='2',`experience`='0', 
`cv`='images/banners/osmbanner1.png',`approved`='0', 
`registerdate`='2014-08-25 22:43:43',`fkcategory`='2' WHERE `id`='2' 

據瞭解,該錯誤是因爲該列fkcategory我沒有在表中。

現在我想知道如何銷燬這個專欄或取消設置或做任何有助於避免此錯誤的內容。我需要擺脫列前,我去保存功能。

+0

我認爲你需要,以幫助你增添幾分碼缺失(即DITS)的。最簡單的方法是從cource中添加缺失的列。 – pcrikos 2014-08-27 13:14:04

+0

其編輯@pcrikos – raaman 2014-08-27 14:12:34

+0

如果保存不起作用,顯示保存將非常有幫助。你正在使用基本保存還是擴展了它?它可能會將其稱爲'_fkcategory'。 – Elin 2014-08-27 16:30:09

回答

0

很明顯,由於您沒有表#__tblb 上的fkcategory字段,所以select state將引發錯誤。

有兩種方法。

添加字段fkcategory表#__tableb

+0

來完成@pcrikos的回答,第二種方法是在保存前刪除添加的字段;只是未設置($ this-> fkcategory) – 2014-08-28 07:34:27