Отображение значений переменных массива сеансов отображается на одной странице, но не на другой - php - PullRequest
0 голосов
/ 14 февраля 2020

У меня есть форма на странице page__form. php:

<form action="page6_form.php" method="post">
<input class="chk" id="check1" type="checkbox" name="infoCollectedAndSold[]" value="Identifiers">Identifiers<br>
            <input class="chk" type="checkbox" name="infoCollectedAndSold[]" value="Collect">
            <input class="chk" type="checkbox" name="infoCollectedAndSold[]" value="Sell">
           <input class="chk" id="disclosed" type="checkbox" name="infoCollectedAndSold[]" value="Disclose"><br><br>
<input type="submit" value="Next" />
</form>

Входные данные формы хранятся в переменной сеанса следующим образом:

<?php
session_start();
foreach ($_POST as $key => $value) {
    $_SESSION[$key] = $value;
}
?>

Затем на другой странице с именем page6_form. php Я отображаю значения, выбранные из этой формы:

<?php
session_start();
$arr = $_POST['infoCollectedAndSold'];
foreach ($arr as $key => $val) {
   echo '<b>' . $val . '</b>';
}
?>

Затем я делаю то же самое на странице page__form. php:

<?php
session_start();
$arr = $_POST['infoCollectedAndSold'];
foreach ($arr as $key => $val) {
   echo '<b>' . $val . '</b>';
}
?>

, но получаю сообщение об ошибке:

Notice: Undefined index: infoCollectedAndSold in C:\xampp\htdocs\legalForm\page7_form.php

1 Ответ

1 голос
/ 14 февраля 2020

Не могли бы вы предоставить некоторые дополнительные сведения о вашем сценарии использования, поскольку заголовок вопроса вводит в заблуждение. У вас точно нет проблемы с сессиями, поскольку вы предлагаете заголовок, поскольку вы никогда не пытаетесь отобразить информацию о сессиях на разных страницах.

В одном случае (page5_form. php) у вас есть форма, которая указывает на page6_form. php вы также устанавливаете некоторые данные в сеансе (также в page5_form. php - можете ли вы подтвердить это, как это предлагается, но явно не указано).

На page6_form. php, цель формы, отображаемой на page5_form. php, вы просто выводите данные из $ _POST.

На page7_form. php вы также выводите данные из $ _POST.

  1. вы никогда не выводите данные из сценариев $ _SESSION
  2. , так как сценарии page6 и page7 выводят только те данные, которые отправляются им через POST. Понятно, какая форма отправляет данные в page6_form. php, но не уверен, кто отправляет данные в page7_form. php, однако при условии, что вы просто переключаете цели в форме, отображаемой в page5_form. php, и page6, и page7 должны отображать одно и то же вывод при условии, что вы выбираете те же самые вещи в форме.

Приветствия!

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