我正在使用Joomla 3.1并在代码中出现错误1054未知列'数组'请帮我修复它。
protected function getOptions()
{
// Initialize variables.
$options = array();
$varname = (string) $this->element['varname'];
$project_id = JFactory::getApplication()->input->get($varname);
if (is_array($project_id)) {
$project_id = $project_id[0];
}
if ($project_id)
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('id AS value');
$query->select('CASE LENGTH(name) when 0 then CONCAT('.$db->Quote(JText::_('COM_JOOMLEAGUE_GLOBAL_MATCHDAY_NAME')). ', " ", id) else name END as text ');
$query->from('#__joomleague_round ');
$query->where('project_id = '.$project_id);
$query->order('roundcode');
$db->setQuery($query);
$options = $db->loadObjectList();
}
答案 0 :(得分:2)
显然,$project_id[0]
仍然拥有一个数组。由于我不知道$this->element['varname']
来自何处,因此很难说你的变量是什么: - )
另外,作为一个注释:您可能应该在查询中使用它之前过滤输入,特别是如果您在示例中使用它未转义。至少使用(int)
将其强制转换为数字。
要转储一些变量内容,我可以推荐JDump。这是JED(http://extensions.joomla.org/extensions/miscellaneous/development/1509)上提供的非商业扩展。