Новости Joomla

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

👩‍💻 Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1. Это релиз, в который включены уже проверенные изменения, но ещё очень многие исправления и улучшения ждут своей очереди. Joomla следит за качеством и безопасностью своего кода и каждое изменение должно быть успешно протестировано как минимум ещё двумя участниками сообщества. Разработка Joomla ведётся на платформе GitHub.Филипп Уолтон (Philip Walton) - один из разработчиков, кто активно вносит свой вклад в ядро Joomla. Он уже несколько месяцев посвящает свои послеполуденные часы пятницы работе с Joomla и предлагает присоединиться к нему. 📆 Пятница, 30 мая 2025, с 15:00 до 17:00 по UTC (Лондон) - с 18:00 до 20:00 по Москве.В чате Google Meet Филипп готов помочь с тестированием тем, кто будет делать это в первый раз. А так же он подготовил список лёгких Pull Request, которые можно протестировать довольно быстро. Чем больше тестов будет проведено сейчас, тем меньше ошибок вылезет потом. На данный момент 148 (уже 147 на момент написания заметки) PR на GitHub Joomla ждут тестирования.👩‍💻 Open to all. All together.Также вам поможет сделать первые шаги это видео.GitHub JoomlaДа, это вечер пятницы. Но тестирование занимает порой минут 15, а доброе дело сделано. Просто убедитесь, что разработчик чего-то не пропустил и всё работает как ожидается.#joomla #joomla6 #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 4 Ответов
  • 922 Просмотров
*

ds30358

  • Новичок
  • 1
  • 0 / 0
Ошибка: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE `fieldcode` = '17'' at line 1

class modDatingSearchHelper
{
   function getGenderValue( $fieldcode )
   {
      $db = JFactory::getDbo();
      $query = $db->getQuery(true);
      $query ="SELECT " . $db->Quotename("options"). " ";
      $query ="FROM " . $db->Quotename("#__community_fields")." ";
      $query ="WHERE " . $db->Quotename("fieldcode"). " = " . $db->quote($fieldcode);
            
      $db->setQuery($query);
        $results = $db->loadResult();            

      if($db->getErrorNum()) {
         JError::raiseError( 500, $db->stderr() );
       }
      
      $options = array();
      $options = explode("\n", $results);
      array_walk($options, array( 'JString' , 'trim' ) );
            
      return $options;
   }
   
   function getCountryValue( $fieldcode )
   {
      // retrieve field details
      $db = JFactory::getDbo();
      $query = $db->getQuery(true);
         
      $query ="SELECT * FROM " . $db->Quotename("#__community_fields")." ";
      $query ="WHERE " . $db->Quotename("fieldcode"). " = " . $db->quote($fieldcode);
            
      $db->setQuery($query);
        $results = $db->loadResult();               

      if($db->getErrorNum()) {
         JError::raiseError( 500, $db->stderr() );
       }
      
      // load countries from XML
      jimport( 'joomla.filesystem.file' );
      $file   = JPATH_ROOT . DS . 'components' . DS . 'com_community' . DS . 'libraries' . DS . 'fields' . DS . 'countries.xml';
      
      $options = array();
      
      if( JFile::exists( $file ) )
      {
         $contents   = JFile::read( $file );
         $parser      =& JFactory::getXMLParser('Simple');
         $parser->loadFile( $file );
         $document   =& $parser->document;
   
         $element      =& $document->getElementByPath( 'countries' );
         $countries      = $element->children(); 
         
         foreach($countries as $country )
         {
            $options[]   = $country->getElementByPath('name')->data();
         }
      }   

      array_walk($options, array( 'JString' , 'trim' ) );
            
      return $options;
   }
   
   function getFieldType($fieldcode)
   {
      $db = JFactory::getDbo();
      $query = $db->getQuery(true);   
       $query ="SELECT " . $db->Quotename("type"). ", " . $db->Quotename("fieldcode"). " ";
      $query = "FROM " . $db->Quotename("#__community_fields")." ";
            
      $db->setQuery( $sql );
      $results = $db->loadObjectList();
      
      $type = new stdClass();
      
      foreach($fieldcode as $key=>$field)
      {
         foreach($results as $data)
         {
            if($field == $data->fieldcode)
            {
               $type->$key = $data->type;
            }
         }
      }
      
      return $type;
   }
}
*

fsv

  • Живу я здесь
  • 2781
  • 410 / 2
Re: Ошибка: 1064 - You have an error in your SQL syntax;
« Ответ #1 : 02.12.2017, 16:49:02 »
Простыню под спойлер спрячьте.

Вы в каждой строке переопределяете $query ($query =...). Почитайте доки, как запросы пишутся.
Веб-разработка: заказ. Только новая разработка.
*

Aleks.Denezh

  • Живу я здесь
  • 3404
  • 428 / 4
Re: Ошибка: 1064 - You have an error in your SQL syntax;
« Ответ #2 : 02.12.2017, 19:33:27 »
Лол ошибки видно невооруженным взглядом
*

Aleks.Denezh

  • Живу я здесь
  • 3404
  • 428 / 4
Re: Ошибка: 1064 - You have an error in your SQL syntax;
« Ответ #3 : 02.12.2017, 19:35:44 »
$query = $db->getQuery(true);
$query ="SELECT " . $db->Quotename("options"). " ";
$query ="FROM " . $db->Quotename("#__community_fields")." ";
$query ="WHERE " . $db->Quotename("fieldcode"). " = " . $db->quote($fieldcode);

ничего тут не забыли? например конкатенацию?
у вас 1 с строка вы получаете объект запроса (зачем если вы потом строкой долбите?)
2. строка вы присваиваете переменной $query  значение "SELECT " . $db->Quotename("options"). " ";
3. строка  вы присваиваете переменной $query  значение "FROM " . $db->Quotename("#__community_fields")." ";
4. строка  вы присваиваете переменной $query  значение "WHERE " . $db->Quotename("fieldcode"). " = " . $db->quote($fieldcode);

в итоге на выхлопе ваш полный запрос (то есть содержимое $query) выгляди так: Where `fieldcode`='17' всё, больше ничего нет, потому что на каждой строке вы заменяли содержимое переменно!
*

Aleks.Denezh

  • Живу я здесь
  • 3404
  • 428 / 4
Re: Ошибка: 1064 - You have an error in your SQL syntax;
« Ответ #4 : 02.12.2017, 19:39:30 »
А теперь как надо было написать этот запрос:
Код
$db = JFactory::getDbo();
$query = $db->getQuery( true )
->select( '`options`' )
->from( '`#__community_fields`' )
->where( '`fieldcode`=' . $db->q( $fieldcode ) );
$result = $db->setQuery( $query )->loadResult();
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Странная ошибка

Автор borro

Ответов: 6
Просмотров: 2426
Последний ответ 31.07.2020, 17:19:58
от NewUsers
Ошибка при выводе пользовательского поля

Автор Glorius

Ответов: 7
Просмотров: 817
Последний ответ 13.08.2019, 23:16:39
от sivers
[РЕШЕНО] Ошибка повторной установки

Автор platonische

Ответов: 17
Просмотров: 1763
Последний ответ 28.11.2017, 13:26:44
от platonische
Ошибка про вызове формы в контрллере компонента

Автор GuDeVic

Ответов: 21
Просмотров: 1273
Последний ответ 16.12.2016, 01:16:29
от robert
Ошибка в компоненте при передаче параметров в форму для редактирования на стороне сайта

Автор GuDeVic

Ответов: 66
Просмотров: 4098
Последний ответ 23.11.2016, 22:53:48
от GuDeVic