1
這裏是我的查詢,我想把它寫在zend framework裏面的模型中。如何在zend框架中編寫「show columns」mysql
SHOW COLUMNS FROM employee WHERE Field = 'status'
這裏是我的查詢,我想把它寫在zend framework裏面的模型中。如何在zend框架中編寫「show columns」mysql
SHOW COLUMNS FROM employee WHERE Field = 'status'
function getstatusColumn()
{
$fieldname = 'status';
$select = $this->getDbTable()->getAdapter()->quoteInto("SHOW COLUMNS FROM employee WHERE Field = ?",$fieldname);
$select = $this->getDbTable()->getAdapter()->fetchAll($select);
foreach($select as $result)
{
$r = $result['Type'];
$enum = substr($r, 6, -2);
$values = explode("','", $enum);
}
return $values;
}
這是我做過什麼讓souliton我的問題。 這是我用來顯示下拉列表中的值。
您可以隨時使用$this->getAdapter()->query($yourQuery)
到當前數據庫上執行任意的查詢。因此
你的函數看起來是這樣的:
public function getByField($fieldName){
$yourQuery=$this->getAdapter()->quoteInto("SHOW COLUMNS FROM employee WHERE Field = '?'",$fieldname);
$query=$this->getAdapter()->query($yourQuery);
return $this->getAdapter()->fetchAll($query);
}
這應該這樣做相當不錯。
我得到一個致命錯誤致命錯誤:調用未定義的方法User_Model_DbTable_Employee :: quoteInto()。我如何解決這個問題。這是我的代碼函數getstatuscolumn() {field ='status'; $ fieldname ='status'; $ yourQuery = $ this-> getDbTable() - > quoteInto(「SHOW COLUMNS FROM employee WHERE Field ='?'」,$ fieldname); $ query = $ this-> getDbTable() - > query($ yourQuery); return $ this-> getDbTable() - > fetchAll($ query); } – suppi
不要做'getDbTable()',做'getAdapter()'。我不知道'getDbTable()'是什麼,但我認爲它返回一個'Zend_Db_Table_Abstract'對象。你想要的是一個' Zend_Db_Adapter_Abstract'對象。正如我寫的那樣正確地嘗試。 –
我試着和你給我的代碼一樣,並且我得到一個致命錯誤,顯示「致命錯誤:調用未定義的方法User_Model_Employee :: getAdapter()in」。你會建議我解決這個問題。謝謝。 – suppi