POST + постраничная разбивка

Тема в разделе "FAQ", создана пользователем Demon425, 8 июл 2011.

Статус темы:
Закрыта.
  1. Demon425

    Demon425

    Регистр.:
    9 июл 2008
    Сообщения:
    461
    Симпатии:
    116
    Привет всем.

    Написал небольшой скрипт поиска по базе mysql.

    Данные скрипт получаем через $_POST, навигация методом $_GET (&page=X).

    Проблема в том, что первую страницу скрипт нормально отображает и навигацию, количество страниц нормально рисует, а дальше уже со 2-й страницы он "не помнит" запрос из POST и начинает выводить все данные (у меня если нет параметров - выводит всё).

    Может кто сталкивался ? кто подскажет, как добиться разбивки нормальной?
     
  2. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    989
    Симпатии:
    267
    Пост запрос передается только из формы <form> либо с помощью сокетов или curl. В вашем случае данные для передачи между страницами нужно передовать методом get или записывать их в куки или в сессию.
     
  3. Demon425

    Demon425

    Регистр.:
    9 июл 2008
    Сообщения:
    461
    Симпатии:
    116
    Из формы. Я уже сделал так:

    Код:
    session_start();
    
    if (!isset($_SESSION['searchtext']) AND isset($searchtext)) {
    	$_SESSION['searchtext'] = $searchtext;
    }
    
    if (!isset($searchtext)) {
    	$searchtext = $_SESSION['searchtext'];
    }
     
  4. esche

    esche

    Регистр.:
    9 авг 2009
    Сообщения:
    359
    Симпатии:
    243
    При генерации ссылок на постраничную разбивку добавлять к ним параметры (дальше они будут $_GET). Либо сохранять параметры поиска в сессии.. Либо по страницам переходить $_POST-кнопками..
     
  5. Arqin

    Arqin

    Регистр.:
    17 мар 2009
    Сообщения:
    185
    Симпатии:
    37
    Если вам нужно было передавать параметры поисковой строки, то, кмк, лучшее решение - передавать её методом GET (не нужно лишних условий, лишних записей в сессию, более прозрачная реализация).
     
  6. uNknownMark

    uNknownMark

    Регистр.:
    22 сен 2007
    Сообщения:
    393
    Симпатии:
    169
    Как вариант передавать данные через GET как писали выше.
    Но если поиск планирует расширяться и данных станет много возможно будет не удобно.
    Еще вариант как передается например в PhpMyAdmin. Делаем форму с скрытыми полями в которых параметры запроса, и кнопку место сабмит, называем например вперед или номером страницы.
     
Статус темы:
Закрыта.