Постоянная переменная PHP, но изменчивая? - PullRequest
0 голосов
/ 05 марта 2011

Это больше вопрос теории php, и интересно, как этот сценарий будет реализован ..

Итак, у меня есть галерея с нумерацией страниц, все сделано путем перезагрузки страницы через $ _GET.

Я хочу, чтобы у пользователя была возможность изменять количество изображений, отображаемых на странице (в основном это мой LIMIT). У меня это работает, однако, когда они переходят на следующую страницу, php перезагружается, и количество страниц возвращается к значению по умолчанию.

Есть ли способ сохранить эту переменную через $ _POST на другой странице, когда они выбирают количество страниц, а затем каждый раз, когда страница перезагружается, она захватывает эту переменную, поэтому она не сбрасывается?

Извините, я заболел. Надеюсь, это имеет смысл

Ответы [ 3 ]

2 голосов
/ 05 марта 2011

Я полагаю, вы ищете переменные сеанса

<?php
session_start(); 
$_SESSION['views'] = 1; // store session data
echo "Pageviews = ". $_SESSION['views']; //retrieve data
?>

http://www.tizag.com/phpT/phpsessions.php

1 голос
/ 05 марта 2011

То, что вы хотите, это сеансы PHP, которые

... состоит из способа сохранения определенных данных при последующих обращениях

См. PHP документы для получения дополнительной информации.

0 голосов
/ 05 марта 2011

Каждый раз, когда вы отправляете запрос на сервер, передайте все переменные, которые вам нужны. Поэтому, если вы изменяете лимит, отправляя форму, передайте номер страницы в виде скрытого поля формы:

<select name="limit">...</select>
<input type="hidden" name="pageNum" value="<?= htmlspecialchars($pageNum) ?>" />

Или, если вы изменяете лимит со ссылкой, передайте номер страницы в качестве другого аргумента URL:

<a href="?limit=10&pageNum=<?= htmlspecialchars($pageNum) ?>">Limit 10</a>

Затем вы можете прочитать его на сервере, используя $_POST["pageNum"] или $_GET["pageNum"].

Я не рекомендую хранить такие вещи в этом сеансе. Если вы это сделаете, вы запретите людям открывать несколько окон на разных страницах. Лучше всего передать все в запросе (то есть форму или ссылку).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...