1

Joomla 3.1 を使用していますが、コードにエラー 1054 Unknown column 'Array' があります。修正を手伝ってください。

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();
    }
4

1 に答える 1

2

どうやら、$project_id[0]まだ配列を保持しています。どこから来ているのかわからないので、$this->element['varname']変数が何を保持しているかを言うのは難しいです:-)

また、メモとして:特に例のようにエスケープせずに使用している場合は、クエリで使用する前に入力をフィルタリングする必要があります。(int)少なくとも使用して数値に強制します。

変数の内容をダンプするには、JDump をお勧めします。これは、JED ( http://extensions.joomla.org/extensions/miscellaneous/development/1509 )で利用できる非商用の拡張機能です。

于 2013-05-06T13:32:55.897 に答える