We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 6272
    • 95 Posts
    Создал тему по сниппету, дабы все вопросы и ответы по нему были в одной теме - как по остальным сниппетам. Если есть вопросы - задавайте, помогу по мере возможностей (знаний и времени).

    А пока вопрос от меня smiley
    Создаю форму поиска:
    <form id="tr" action='[~[*id*]~]' method= "get”>
    [+tve.keywordsSearch:excludeTVs->all:label->Слова:+]<br>
    [+tve.category:filter->9:label->Категория:tvtype->dropdown:blankLabel->ВСЕ+]<br>
    [+tve.avtor-text:filter->9:label->Автор:tvtype->text+]<br>
    <input type= "submit" name="search" value= "Search"/>
    </form>

    Тобишь:
    1. Поле для поиска слов по ТВ.
    2. Дроп-меню фильтр по категориям.
    3. Поле для поиска по точному имени автора.

    По автору ищет отлично, категории тоже работают. Если задать значение в первое поле, выдает:
    « Execution of a query to the database failed - 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 ’)’ at line 1 »
    SQL: SELECT DISTINCT sc.id, sc.pagetitle, sc.longtitle, sc.introtext, sc.description, sc.content FROM `site-primer_modx`.mx_site_content sc WHERE (sc.pagetitle LIKE ’%test%’ OR sc.longtitle LIKE ’%test%’ OR sc.introtext LIKE ’%test%’ OR sc.description LIKE ’%test%’ OR sc.content LIKE ’%test%’ ) AND sc.privateweb = 0 AND sc.published = 1 AND sc.searchable=1 AND sc.deleted=0 AND sc.parent IN ()
    Это и это пробовал - не помогло. Больше ни чего не нашел (точнее нашел много всего, но не о том). Может кто-то сталкивался?

    P.S. Как в модуле tvExplorer tveditor во время поиска использовать LIKE ’%слово%’ - тоже интересно. Не уж то ни кто не решал сие?
      • 6272
      • 95 Posts
      Забыл важную деталь - версия PHP и MySQL пятая. Если еще точнее: PHP version 5.2.5, MySQL version 5.0.51a-community.
        • 2613
        • 6 Posts
        Что-то у меня и дроп-меню работать не хочет :

        1)Создал Tv c именем product (one|two)
        2)Заполнил тв в документах
        3)Проверил TvExplorer в админке находит документы по тв правильно
        4)создал форму для TvExplorer c именем mytv:
        <form action= " [~[*id*]~] “method= "get” >
        <fieldset>
        [+tve.product:tvtype->dropdown:filter->9:+]
        </fieldset>
        <fieldset class= "sendForm" >
        <input type= "submit" name= "search" value= "Search"/>
        </fieldset>
        </form>

        5)вызов снипета:
        [!tvExplorer? &dittoName=`Ditto`&formTPL=`mytv`&dittoSnippetParameters=`startID:18|tpl:CATAL_1|tplAlt:CATAL_2|display:6`!]
        [+tve.searchForm+]
        [+tve.dittoList+]


        На страничке форма появилась, выбираю параметр, жму поиск - в результате вываливаюсь на главную страницу.

        Впринципе оно то и логично, в адресной строке левак какой-то:
        .....blablabla.php%20%E2%80%9Cmethod=?product=one%2B&search=Search


        Подскажите...

        ЗЫ, Ditto 2.0.2, tvExplorer 0.7
          • 6272
          • 95 Posts
          Какие-то кавычки у тебя странные.. попробуй <form action= " [~[*id*]~] “method= "get” > заменить на <form id="pr" action=’[~[*id*]~]’ method= "get”>
            • 6272
            • 95 Posts
            Возможно дело и в ином. Я не понял про "blablabla.php" - если ты не используешь дружественные урлы - нужно в форму поиска добавить строку <input type="hidden" name="id" value="[*id*]" />. Та же проблема обсуждалась здесь.
              • 2613
              • 6 Posts
              Quote from: D.SID at Feb 27, 2009, 09:08 AM

              Какие-то кавычки у тебя странные.. попробуй <form action= " [~[*id*]~] “method= "get” > заменить на <form id="pr" action=’[~[*id*]~]’ method= "get”>
              Омг, с кавычками метко подметил.
              Самое интересное, что эти кривые кавычки перекочевали с примера heliotrope в первом посте официальной ветки =)

              На главную теперь не выкидывает, но документов находить не хочет.
              Про hidden field видел, FURLS включены. Впрочем все равно попробывал впихнуть - изменений никаких.
              Продолжаю ковыряться...

              UPD Все, дроп-меню у меня тоже работает. Буду пробовать другие типы.
                • 15944
                • 88 Posts
                Похоже это очень хороший сниппет для создания форм поиска по tv.
                Раньше на месте вызова этого сниппета у меня на сайте стоял просто вызов дитто, а теперь я создал форму и всё очень хорошо фильтруется по tv. Но я не понял одну вещь, можно ли в tvExplorer сделать так, чтобы при первом заходе на страницу с вызовом сниппета (т.е. данные из формы ещё не отсылались) выводились все документы без сортировки (как при обычном дитто) ?
                Или кто-то знает другой способ этого достичь huh
                Вариант, когда на одной странице выводятся все документы при помощи дитто, а результаты работы tvExplorer выводится на другой странице, мне к сожалению не подходит.
                  • 15944
                  • 88 Posts
                  Quote from: KiR at Apr 26, 2009, 10:32 AM

                  Но я не понял одну вещь, можно ли в tvExplorer сделать так, чтобы при первом заходе на страницу с вызовом сниппета (т.е. данные из формы ещё не отсылались) выводились все документы без сортировки (как при обычном дитто) ?
                  Или кто-то знает другой способ этого достичь huh
                  Вариант, когда на одной странице выводятся все документы при помощи дитто, а результаты работы tvExplorer выводится на другой странице, мне к сожалению не подходит.
                  В общем, одну вещь я всё таки понял, выглядит по уродски, но работает:
                  в ссылку на страницу с выводом tvExplorer (www.test.com/ru/dogs) я добавил переменные, которые содержат результат "выбрано всё", получилась ссылка типа такой "www.test.com/ru/dogs?City=&Price1-0=&Price1-1=&Age-0=&Age-1=&search=Начать+поиск", эти переменные при заходе по ссылке схватывает tvExplorer и выдает полный список всех док-тов. Ужос undecided
                    • 897
                    • 1,620 Posts
                    сама по себе идея с начала вывалить напосетителя всю "кащу" тем самым сделав себе ненужную нагрузку на сервер, а потом предлагать посетителю от "каши" избавляться. Хотя не спорю, когда-то это, возможно, и нужно.
                      "Und wenn du lange in einen Abgrund blickst, blickt der Abgrund auch in dich hinein."

                      Не используйте Revo для "просто сайтов". Используйте Evo

                      Who can defeat the Russian bear?
                      • 28630
                      • 31 Posts
                      Необходимо сделать выборку по полю стоимость - cost в интервале от и до.
                      Для этого использую фильтры 6(>=) и 5(<=).
                      В tv cost стоят значения от 100 до 110. Все работает, только вот загвоздка: значение 100 не попадает в вывод ditto, если поставить в форме от 100.

                      <fieldset>
                      [+tve.cost:#RANGE{label->от:filter->6||label->до:filter->5}+]
                      </fieldset>
                      


                      PS
                      С горем пополам поставил, настроил, даже пропатчил как написано здесь http://modxcms.com/forums/index.php/topic,16455.msg109886.html#msg109886