Новости Joomla

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

spirit1086

  • Захожу иногда
  • 115
  • 1 / 0
JRegistry поле
« : 22.01.2015, 08:32:46 »
Здравствуйте, подскажите свою реализацию кто как работает с данным полем.Есть поле допустим заполненное так {"0":"4","1":"5"}
В модели есть функция стандартная getListQuery() как с помощью сделать запрос чтобы проверить есть ли в этом поле допустим 4 или 5 или оба значения, возможно ли это реализовать в запросе функции getListQuery(). Вы как реализуете это?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: JRegistry поле
« Ответ #1 : 22.01.2015, 08:54:49 »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

spirit1086

  • Захожу иногда
  • 115
  • 1 / 0
Re: JRegistry поле
« Ответ #2 : 22.01.2015, 09:10:14 »
я выстраиваю запрос без этого поля, потом в view.html  через цикл проверяю есть ли значение  в поле jregistry
Код
foreach($this->items as item)
{
              if ( $check!='' )   // проверяем чекбоксы
                { 
                   $registry = new JRegistry;
       $registry->loadString($item->infstrukt);
       $mas->infst = $registry->toArray();
                   $k=0; // ключ присутствия хоть одного значения в массиве записи
                   
                    for ($j=0;$j<count($check);$j++)
                    {
                       if (in_array($check[$j] , $mas->infst))  // если есть  значение сохраняем ключу 1
                       {
                          $k=1;
                       }
                    }   
                   
                    if ($k==0) { unset($this->items[$i]);} // удаляем из массива если нет этих чекбоксов
                }
 
}
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Re: JRegistry поле
« Ответ #3 : 22.01.2015, 09:26:29 »
Непонятно, что вы хотите получить в итоге. Зачем все это?
*

spirit1086

  • Захожу иногда
  • 115
  • 1 / 0
Re: JRegistry поле
« Ответ #4 : 22.01.2015, 10:09:24 »
у меня в фронтенде есть фильтр из чекбоксов, он формирует get url  типа  &check=1,8,2, с помощью getListquery я вытаскиваю записи не используя это поле, а потом в view.html проверяю с помощью коду описанного выше есть ли эти значения в каждой записи в поле infstrukt так как она имеет тип jregistry. Я не знаю как его использовать в запросе. поэтому так делаю 
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: JRegistry поле
« Ответ #6 : 22.01.2015, 10:45:17 »
-Подход неправильный.
-Код с синтаксическими ошибками, и даже без них либо ничего не делает, либо удаляет то, чего не нужно удалять.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

spirit1086

  • Захожу иногда
  • 115
  • 1 / 0
Re: JRegistry поле
« Ответ #7 : 22.01.2015, 11:13:29 »
FIND_IN_SET Вам в помощь
Спасибо хорошая функция, а если нужно выбрать не одно значение она только с одним работает, а несколько  
Код
$inf может быть и равен =1, а может быть =5,1
 $query->where('FIND_IN_SET ('.$inf.',a.infstrukt)');
*

spirit1086

  • Захожу иногда
  • 115
  • 1 / 0
Re: JRegistry поле
« Ответ #8 : 22.01.2015, 11:15:19 »
-Подход неправильный.
-Код с синтаксическими ошибками, и даже без них либо ничего не делает, либо удаляет то, чего не нужно удалять.
код все делает правильно! проверил выводит все как нужно
*

spirit1086

  • Захожу иногда
  • 115
  • 1 / 0
Re: JRegistry поле
« Ответ #9 : 22.01.2015, 11:17:20 »
код все делает правильно! проверил выводит все как нужно
если Неправильный то подскажите в каком направлении работать, как подсказывают люди остальные здесь, а если не сталкивались с таким то пожалуйста не флудите
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Re: JRegistry поле
« Ответ #10 : 22.01.2015, 11:37:14 »
Спасибо хорошая функция, а если нужно выбрать не одно значение она только с одним работает, а несколько 
Код
$inf может быть и равен =1, а может быть =5,1
 $query->where('FIND_IN_SET ('.$inf.',a.infstrukt)');
http://stackoverflow.com/questions/5015403/mysql-find-in-set-with-multiple-search-string
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: JRegistry поле
« Ответ #11 : 22.01.2015, 11:50:24 »
- foreach($this->items as item)//
- unset($this->items[$i]); //$i откуда взялась?
На счет
либо ничего не делает, либо удаляет то, чего не нужно удалять.
возможно, ошибся, потому что в таких случаях обычно пишу
Код: php-brief
$k=1;
break;
Не будь паразитом, сделай что-нибудь самостоятельно!
*

spirit1086

  • Захожу иногда
  • 115
  • 1 / 0
Re: JRegistry поле
« Ответ #12 : 22.01.2015, 12:09:54 »
- foreach($this->items as item)//
- unset($this->items[$i]); //$i откуда взялась?
На счетвозможно, ошибся, потому что в таких случаях обычно пишу
Код: php-brief
$k=1;
break;
перед $item $i=>$item не заметил что здесь не указал ключ скопировал не в том месте
*

spirit1086

  • Захожу иногда
  • 115
  • 1 / 0
Re: JRegistry поле
« Ответ #13 : 22.01.2015, 12:11:12 »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как изменить директорию и разрешенные типы файлов в поле media?

Автор denism300

Ответов: 0
Просмотров: 294
Последний ответ 01.12.2022, 23:02:54
от denism300
[Решено] принудительно заполнить поле tags в плагине

Автор Sergeyy

Ответов: 5
Просмотров: 1184
Последний ответ 30.01.2017, 14:40:43
от Sergeyy
Дополнительное поле в модуле

Автор paskal

Ответов: 21
Просмотров: 2261
Последний ответ 27.08.2016, 00:59:55
от robert
Joomla 3: как создать стилизованное поле поиска на всех страницах

Автор justquestion

Ответов: 1
Просмотров: 1129
Последний ответ 17.12.2013, 13:30:17
от umbabaraumba
Как добавить дополнительное поле для материала

Автор Mitrich

Ответов: 22
Просмотров: 37366
Последний ответ 17.05.2013, 13:50:35
от IzrA