2013-09-18 8 views
0

Здравствуйте, я получил переменную $ offset. Когда пользователь просматривает страницу - $ offset должен быть равен 0;Освежающая переменная при нажатии на ссылку

Когда он нажимает на ссылку

<a href="players.php?next=3">Next</a> 

Необходимо обновить $ компенсировано путем добавления к нему следующей своей стоимости.

Так я писал, как этот

$offset = $offset + $_GET['next']; 

Когда я буду нажав на ссылку впервые он работает, но будущие щелчки не делают, потому что он не помнит $ значения смещения. Как я должен писать, чтобы сделать это правильно?

ответ

1

я бы сожалеем помощью сеанса для хранения этого. Это пустая трата ресурсов сервера.

$nextLot=3; 
$offset=0; 
if(!empty($_GET['offset'])) 
{ 
    $offset=$_GET['offset']; 
} 
$offset+=$_GET['next']; 

<a href="players.php?offset=<?php=$offset?>&next=<?php=$nextLot?>">Next</a> 

Этот метод экономит ресурсы и просто проверяет URL-адрес для всей необходимой информации.

+0

Good Catch .... приятно +1 от меня. –

+0

@DipeshParmar Все хорошо, но вам не нужно было удалять свой ответ, я просто не думал, что это самый эффективный способ сделать это. Это может помочь другим сделать что-то подобное, что невозможно сделать с помощью URL или POST-данных. – Fluffeh

+0

в порядке восстановил его. –

0

Вы можете сделать это с помощью SESSION

<?php if(isset($_SESSION['next']) : ?> 
    <a href="players.php?next=<?php echo $_SESSION['next']; ?>">Next</a> 
<?php else : ?> 
    <a href="players.php?next=1">Next</a> 
<?php endif; ?> 

и offset

$_SESSION['offset'] = isset($_SESSION['offset']) + $_GET['next']; 
+1

Будет работать, но сеансы, чтобы сохранить, что такое офсет? Разве вы не думаете, что это расточительно? – Fluffeh

0

Вы можете передать переменную в $ смещения через $ _SESSION.

Так что ваш код будет выглядеть примерно так:

$_SESSION['offset'] = $_SESSION['offset'] + $_GET['next']; 
Смежные вопросы