zilber 3 Опубликовано: 8 февраля 2015 Рассказать Опубликовано: 8 февраля 2015 Приветствую. Демо-версия (пока) sgtours.ru Если в статической странице выполняется скрипт, у которого есть постраничный вывод результатов поиска из базы, то каким образом формировать ссылки на страницы вывода результатов? Сразу оговорюсь, что на том же сервере, но вне DLE скрипт отлично работает и с POST и с GET. Равно как и на локальном Open Server. В составе DLE: Методом GET данные не передаются вовсе, скрипт не срабатывает, запрос на основе полученных из формы данных не формируется, хотя ссылка сформирована правильно. Ссылки типа: /hotelsearch.html?type[]=25&rating[]=21&place[]=5&submit=ok Методом POST происходит формирование первичного запроса на выборку из базы, выводится первая страница результатов. На следующие страницы данные не передаются, запрос не формируется, страницы открываются пустые. Ссылки типа: /hotelsearch.html?page=2[/code] Цитата Ссылка на сообщение Поделиться на других сайтах
zilber 3 Опубликовано: 8 февраля 2015 Рассказать Опубликовано: 8 февраля 2015 (изменено) Автор Ну написали бы: "тупень, иди учи матчать" хотя бы :-) С версии 6.3 сайты делаем только на DLE, лицензий мы с клиентами чуть более 60 штук купили, а на форуме меня даже послать качественно не могут :-) :-) :-) Изменено 8 февраля 2015 пользователем zilber Цитата Ссылка на сообщение Поделиться на других сайтах
zilber 3 Опубликовано: 8 февраля 2015 Рассказать Опубликовано: 8 февраля 2015 Автор Документацию читал про передачу параметров при вызове своего скрипты, но ведь эти параметры мой скрипт генерирует уже после обращения к нему Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 8 февраля 2015 Рассказать Опубликовано: 8 февраля 2015 zilber, не нужно делать через статическую страницу. Нужно вот так: http://www.kanaspo.com/?do=bestnews См. документацию: http://dle-news.ru/extras/online/modules_include.html Также вы можете использовать подключение своих модулей и для замены основного блока, где выводятся новости и другая основная информация, для этого необходимо использовать данный тег совместно с тегами [aviable=раздел]текст[/aviable] и [not-aviable=раздел]текст[/not-aviable] Описание тегов смотрите в документации в разделе "Вывод новостей на страницах". Вы можете использовать как стандартный список разделов, так и использовать создание собственного раздела сайта, передав его в URL браузера. Рассмотрим простейший пример. Вы хотите добавить к стандартным разделам сайта, добавить свой раздел и выводить информацию в нем из вашего модуля. Допустим вы хотите создать раздел FAQ. Для этого в шаблоне main.tpl прописывается конструкция: [aviable=faq]{include file="engine/modules/mymod.php"}[/aviable] [not-aviable=faq]{content}[/not-aviable] После подобного подключения помимо работы стандартных разделов сайта при обращении по адресу: http://site.ru/index.php?do=faq вместо новостей будет выводится ваш новый раздел из вашего модуля. А теперь простым языком, создал .php файл в папке engine/modules, в нём: <?php if( ! defined( 'DATALIFEENGINE' ) ) { die( "Hacking attempt!" ); } $tpl->load_template( 'mymod.tpl' ); // подключаем шаблон $tpl->set( '{demo}', '123' ); // можно создавать свои {коды} // сюда пихаешь свой код, все свои GET и прочеее $tpl->compile( 'content' ); // говорим dle, чтобы выводил работу модуля через {content}, который в main.tpl $tpl->clear(); ?> теперь в engine/engine.php подключаешь его: case "mymod" : include ENGINE_DIR . '/modules/mymod.php'; break; Всё! Теперь перейдя по ссылки site.ru/?do=mymod у тебя будет срабатывать файл engine/modules/mymod.php, а в качестве шаблона брать mymod.tpl Теперь можешь задавать любые параметры url Цитата Ссылка на сообщение Поделиться на других сайтах
zilber 3 Опубликовано: 9 февраля 2015 Рассказать Опубликовано: 9 февраля 2015 Автор Дело сдвинулось :-) Правда при переходе на следующие страницы - сразу hacking attempС hacking attempt разобрался. Но форма GET в поле action имея результирующим адресом /?do=hotels, передает только ? Ссылка результата получается: /?(данные формы)&submit=ok вместо /?do=hotels&page=1&(данные формы)&submit=ok Перепробовал все варианты action, включая php-вставки. Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 9 февраля 2015 Рассказать Опубликовано: 9 февраля 2015 zilber, что-то делаешь не так: http://www.kanaspo.com/?do=bestnews&id=123&page=123&name=zilber Прокрути страницу в самый низ, там будет тебе приветствие, если ник свой уберёшь из ссылки, приветствие будет анонимусу Результат обработки get я вывожу через {код} if ($_GET['name'] == 'zilber') {$demo = 'Привет zilber!';}else{$demo = 'Привет анонимус';} $tpl->set( '{demo}', $demo ); Ссылка результата получается: /?(данные формы)&submit=ok вместо /?do=hotels&page=1&(данные формы)&submit=ok добавь в форму перед <form> <input type="hidden" name="do" value="hotels" />[/code] a action у формы делай на /index.php Цитата Ссылка на сообщение Поделиться на других сайтах
zilber 3 Опубликовано: 9 февраля 2015 Рассказать Опубликовано: 9 февраля 2015 (изменено) Автор zilber, что-то делаешь не так: http://www.kanaspo.c...123&name=zilber Прокрути страницу в самый низ, там будет тебе приветствие, если ник свой уберёшь из ссылки, приветствие будет анонимусу Результат обработки get я вывожу через {код} if ($_GET['name'] == 'zilber') {$demo = 'Привет zilber!';}else{$demo = 'Привет анонимус';} $tpl->set( '{demo}', $demo ); Ссылка результата получается: /?(данные формы)&submit=ok вместо /?do=hotels&page=1&(данные формы)&submit=ok добавь в форму перед <form> <input type="hidden" name="do" value="hotels" /> a action у формы делай на /index.php Отлично! Спасибо!!!!!!! Все работает, наконец-то... Правда это: <input type="hidden" name="do" value="hotels" />[/code] расположил внутри формы, иначе не срабатывало... Гениально!! Вывод происходит черти где на странице, но это уже мелочи, это я отыщу... Спасибо огромное еще раз! Отлегло... PS - и это мне урок. Достал уже пару учебников и десяток уроков. Влетел в задачу, ранее не ставившуюся передо мной и чуть не... Изменено 9 февраля 2015 пользователем zilber Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 9 февраля 2015 Рассказать Опубликовано: 9 февраля 2015 Отлично! Спасибо!!!!!!! Все работает, наконец-то...вот и чудненько Цитата Ссылка на сообщение Поделиться на других сайтах
zilber 3 Опубликовано: 10 февраля 2015 Рассказать Опубликовано: 10 февраля 2015 Автор Еще раз благодарю ODYS за неоценимую помощь на страницах форума и в личных сообщениях! Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.