Новости Joomla

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

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Добрый день, подскажите, кто знает, почему при пагинации данные значениий вводимые в input не сохраняются для этого кода:

Код
<?php

        if (in_array($ch_id->id,$char_rang)){
         $char_from_min[$ch_id->id] = min($characteristic_fieldvalues[$ch_id->id]);
         $char_from_max[$ch_id->id] = max($characteristic_fieldvalues[$ch_id->id]);
         ?>
         <div id="slider<?php print $ch_id->id; ?>" ></div>
         <div class="rangshow">
          <span class="box_char_from"> <?php print JText::_('FROM')?>&nbsp;
            <input type = "text"  class = "inputbox" name = "char_from[<?php print $ch_id->id; ?>]" id="char_from<?php print $ch_id->id; ?>" size="3" value="<?php ($char_from[$ch_id->id] > 0)? print $char_from[$ch_id->id] : print $char_from_min[$ch_id->id]; ?>" />
          </span>
          <span class="box_char_to"> <?php print JText::_('TO')?>&nbsp;
            <input type = "text" class = "inputbox" name = "char_to[<?php print $ch_id->id; ?>]" id="char_to<?php print $ch_id->id; ?>" size="3" value="<?php ($char_to[$ch_id->id] > 0)? print $char_to[$ch_id->id] : print $char_from_max[$ch_id->id]; ?>" />
          </span>
        </div>


Редактировать сообщение
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
а почему они в принципе должны сохранятся? чтобы они сохранялись - их кто то сохранять должен...
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
а почему они в принципе должны сохранятся? чтобы они сохранялись - их кто то сохранять должен...
Так в этом и вопрос, как сохранять эти данные при пагинации, если фильтр использует метод post
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Цитировать
Так в этом и вопрос
не увидел в этом
Цитировать
почему при пагинации данные значениий вводимые в input не сохраняются
такого вопроса. спросили почему - вам ответили почему. а на вопрос "как" ответ - сохранять введенные данные в сессии. и проверять их наличие там, если метод GET. а при POST опять пересохранять.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
В каком направлении "копать" подсказали, но только мне сложно это будет реализовать, т.к. я новичок в программировании, и спрашиваю у профи, как это реализовать в коде?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну за вас же навряд ли кто-то сделает готовый код. подсказать конкретные вещи могут, если что-то делаете, а не получается. но чтобы вместо вас - это скорее в коммерческий раздел. тем более что тот кусок кода который вы показываете - это только часть айсберга. форма фильтра. а сама логика фильтрации где? погуглите "Joomla работа с сессиями", почитайте описание API https://api.joomla.org/cms-3/classes/JSession.html, пробуйте сделать. все в итоге получится :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
mod_jshopping_filters_extended.php

Спойлер
[свернуть]



characteristic.php

Спойлер
[свернуть]
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
В mod_jshopping_filters_extended такая строка есть:
$session = JFactory::getSession();
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну это уже пол дела :) осталось теперь туда че нить записать в нужный момент, а потом в нужный момент считать...

и кстати, вот это то, чей код вы сюда кинули - это случаем не платный фильтр от разработчиков JoomShopping?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
ну это уже пол дела :) осталось теперь туда че нить записать в нужный момент, а потом в нужный момент считать...

и кстати, вот это то, чей код вы сюда кинули - это случаем не платный фильтр от разработчиков JoomShopping?
Этот фильтр шёл вместе с платным шаблоном, его уже после допиливали на фронтенде
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
я к тому, что если это платный фильтр, а судя по всему это он, то обсуждать такие расширения по правилам можно только в специальных темах на форуме, которые создал автор этих расширений. а насколько я помню для этого фильтра автор тему не создавал, поэтому обсуждать его - в принципе противоречит правилам форума. если вы покупали его - попробуйте обратится к его разработчику, возможно это даже будет самым простым решением, и разработчик просто скажет, что нужно добавить. или может даже просто нужно скачать последнюю версию, возможно там это уже решили.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Добавил строчки:
Код
$session->set('char_from', '');
$char_from = $session->get('char_from');
$session->set('char_to', '');
$char_to = $session->get('char_to');

что сделал не правильно
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
все сделали правильно. сохранили в сессию в char_from пустую строку. потом получили ее значение (то, что записали ранее) в переменную $char_from. и точно также с $char_to.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
все сделали правильно. сохранили в сессию в char_from пустую строку. потом получили ее значение (то, что записали ранее) в переменную $char_from. и точно также с $char_to.
Но при пагинации значения не сохраняются в инпутах, значит, где-то есть ошибки или не хватает кода
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Но при пагинации значения не сохраняются в инпутах, значит, где-то есть ошибки или не хватает кода
Так оно не в импутах будет. а в сессии
Ну смотрите. вам надо
1. Записать значение в сессию, к примеру при отправки запроса фильтра.
2. Получить заначения на новой странице
3. Вставить значение в инпут.

Но на самом деле. если мы говорим о пагинации отфильтрованых результатов, если это не AJAX то значения уже где-то есть. Обычно они в GET или POST
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Но при пагинации значения не сохраняются в инпутах, значит, где-то есть ошибки или не хватает кода
так это потому что этот код к сохранению чего то в инпутах никак не относится. я же написал вам, что вы сделали. сохранили в сессию пустую строку. затем вытащили из сессии эту пустую строку, и записали ее в переменную $char_from. и точно также с $char_to. итого, у вас в $char_from и $char_to пустые строки. это вы хотели сделать или нет - не могу сказать, я ж не знаю, для чего вам этот кусок кода нужен. но ошибок в коде нет.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
так это потому что этот код к сохранению чего то в инпутах никак не относится. я же написал вам, что вы сделали. сохранили в сессию пустую строку. затем вытащили из сессии эту пустую строку, и записали ее в переменную $char_from. и точно также с $char_to. итого, у вас в $char_from и $char_to пустые строки. это вы хотели сделать или нет - не могу сказать, я ж не знаю, для чего вам этот кусок кода нужен. но ошибок в коде нет.
Необходимо, чтобы вводимые значения в инпутах, т.е. в $char_from и $char_to, сохранялись при пагинации, соответственно, должны сохранятся и результаты выборки по заданным параметрам, которые как я понял, отправляются по методу POST.
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Что интересно для цены price_from и price_to инпуты сохраняются и при пагинации всё работает
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну это то я понял. только я не вижу ничего похожего на это у вас. смотрите, вам надо сохранить из $_POST значения в сессию, точно также как вы сохраняете, только не пустую строку, а значения из $_POST. и сохранить только если $_POST отправлен. а если не отправлен, то наоборот - попытаться получить из сессии эти сохраненные значения. и вставить их в инпуты.

Что интересно для цены price_from и price_to инпуты сохраняются и при пагинации всё работает
ну так тем более. посомтрите, как сделано для price_from и price_to, и сделайте точно так же.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Изменил metod передачи данных из формы серверу с POST на GET и форма стала работать корректно, пагинация работает.
Где касяк в коде и стоит ли оставить GET с точки зрения безопасности?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
POST ни в чем не надежнее GET, если вы об этом. если с GET все работает как нужно, то оставьте GET
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Изменил metod передачи данных из формы серверу с POST на GET и форма стала работать корректно, пагинация работает.
Где касяк в коде и стоит ли оставить GET с точки зрения безопасности?
Косяк в том что при пагинации вам надо не по ссылочкам пагинации переходить, а выполнять сабмит формы с фильтрами при клике на элемент пагинации!
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Косяк в том что при пагинации вам надо не по ссылочкам пагинации переходить, а выполнять сабмит формы с фильтрами при клике на элемент пагинации!
Получается POST метод работает корректно не правильно настроен файл пагинации при работе с элементом формы через submit, правильно?
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Получается POST метод работает корректно не правильно настроен файл пагинации при работе с элементом формы через submit, правильно?
вообще то пагинация ничего не знает о вашей форме если вы ей об этом не скажите )
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Pagination компонента и данные из формы модуля

Автор platonische

Ответов: 4
Просмотров: 621
Последний ответ 29.01.2020, 11:32:43
от mardok
Получить данные AJAX в контроллере и направить их в модель для записи в бд

Автор donpekc

Ответов: 6
Просмотров: 2153
Последний ответ 24.04.2017, 12:04:52
от donpekc
как грамотно получить другие данные из view?

Автор tm2010

Ответов: 2
Просмотров: 747
Последний ответ 20.02.2017, 23:37:31
от beliyadm
Как получить данные в админке о которых сразу не известно?

Автор platonische

Ответов: 2
Просмотров: 946
Последний ответ 12.04.2016, 16:08:34
от Joker_V
Не подгружаются данные в форму

Автор 32ops

Ответов: 12
Просмотров: 1433
Последний ответ 20.02.2016, 05:55:10
от 32ops