Эта страница, на которой я работаю, содержит список ссылок, которые я не хочу добавлять URL-переменные (.html? Id = 12345), поэтому я подумал, что это может стоить выстрел, чтобы попробовать сеансы в первый раз.Создать сеанс, установить переменную и перенести переменную на следующую страницу
Страница выполняет запрос к базе данных, получает строки, а затем отображает их в списке. Проблема, с которой я сталкиваюсь, заключается в том, что переменная сеанса переписывается следующей строкой в результатах while. Таким образом, сеанс содержит последнюю переменную на странице независимо от того, что пользователь нажимает.
Я думаю, что это проблема размещения кода (переупорядочения), но мне не повезло, но я получил правильную передачу правильной переменной на следующую страницу.
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php
$tourQuery = mysql_query("SELECT * table WHERE ID = '".$page['main_id']."' AND DateTime >= CurDate() ORDER BY DateTime ASC");
$tourcount = mysql_num_rows($tourQuery);
while($tour = mysql_fetch_array($tourQuery))
{
$_SESSION['sessionname'] = $tour['EventID'];
?>
<div class="schedule-row vevent" style="overflow:auto;">
<div class="schedule-button">
<a class="schedlink url" href="<?=$pg['request']?>.html">
View
</a>
</div>
<br clear="all" />
</div>
<?php
}
Так как вы можете видеть, переменная сеанса определяется для каждого результата из запроса, я просто пытаюсь понять, как передать, что на следующей странице, а не последней переменной на этой странице.
Если вы считаете, что код со следующей страницы имеет значение, я могу предоставить его, однако, все, что на самом деле работает на этой странице, поэтому я подумал, что имеет смысл сосредоточиться на коде выше.
так, пожалуйста, помогите мне.
Это не то, как работают сессии. '$ _SESSION' - это массив, который разделяется между запросами. Вы можете поместить в него что-нибудь, в том числе пары 'key => value'. Но вам нужно как-то связать ссылки с элементами сеанса. Вы делаете это с использованием данных GET или POST. Значение '$ _SESSION' здесь избыточно. Stick с '? EventID = $ tour ['EventID']'. –
, если вы не хотите идти с 'GET', то определенно вам нужно выбрать метод POST, потому что с помощью сеанса вы не можете однозначно идентифицировать идентификаторы для отображения значений. –