Форма поиска с нумерацией страниц

#php #mysql

#php #mysql

Вопрос:

У меня проблема с нумерацией страниц результатов записей.

Я хотел бы показать всех пользователей, сохраненных в таблице БД, используя форму поиска, и разбить их на страницы в соответствии со следующим сценарием:

 http://papermashup.com/easy-php-pagination/
  

Если я вставлю вручную значение gendre в запрос ниже,

 "SELECT * FROM $tableName WHERE playerSex  = '0' LIMIT $start, $limit";
  

У меня нет проблем с отображением всех пользователей женского пола,

Если я отправлю значение через форму следующим образом

 "SELECT * FROM $tableName WHERE playerSex  ='" . mysql_real_escape_string($_GET['gendre']) ."' 
LIMIT $start, $limit";
  

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

Как я могу решить эту проблему?

Спасибо

Комментарии:

1. Вам нужно сохранить или перенести ваш запрос на следующую страницу. Ваша следующая страница не знает, что такое поисковый запрос.

2. Это потому, что ваши ссылки на страницы не работают нормально. вы должны добавить amp;gender=... в свою нумерацию страниц href.

3. Привет, путванде, как я могу сохранить или перенести запрос на следующую страницу?

Ответ №1:

Вы должны сохранить свой gender вариант в href нумерации страниц. что-то вроде этого:

 <?php
    foreach $key.... //pagination creator loop
    if(isset($_GET['gender']))
        $href = $key . 'amp;gender=' . $_GET['gender'];
    else
        $href = $key;
?>
  

Комментарии:

1. Я думаю, вы имели в виду $href вместо $herf 😉

2. Хотя «пол» OP (неправильно) записывается как «gendre» (на самом деле это французское написание для обозначения пола), используется $_GET['gendre'] , поэтому неясно, действительно ли OP его неправильно написал.

3. @Fred-ii- извините, я ошибся. но код работает нормально

4. Вы изменили первую, но другая по-прежнему отображается как $_GET['gender'] и amp;gender — все должно читаться как gendre

Ответ №2:

Добавьте параметр GET в URL разбивки на страницы. например, у вас есть URL страницы «http://papermashup.com/easy-php-pagination /» и URL-адрес разбивки на страницы

 "http://papermashup.com/easy-php-pagination/?page=1" , 
"http://papermashup.com/easy-php-pagination/?page=2" , 
"http://papermashup.com/easy-php-pagination/?page=3".......
  

В URL-адресе нумерации страниц добавьте параметр GET, например

 if($_GET['playerSex'] !="")
{

    $playerSex = "amp;playerSex=".$_GET['playerSex'];

}

"http://papermashup.com/easy-php-pagination/?page=1$playerSex"
"http://papermashup.com/easy-php-pagination/?page=2$playerSex"
"http://papermashup.com/easy-php-pagination/?page=3$playerSex" .......