$ _SESSION没有在表单上选择正确的值

时间:2019-02-21 08:09:55

标签: php

我正在尝试将$ _SESSION变量存储在表单选项上,以便在提交后在下一页上进一步使用(此后将被重新加载并使用多次,因此简单的$ _POST将不起作用)

问题在于我选择哪个选项都没有关系,它总是保存最后一个选项(在这种情况下为“ Victoria”)中的值,就像我选择了那个一样。

session_start();已在页面顶部声明

我想念什么吗?形式如下:

<form method="post">

  <label for="turno">Turno:</label>
  <select name="turno" id="turno">
  <option value=DIA>Dia</option>
  <option value=NOCHE>Noche</option>
  </select>
  <label for="planillera">Planillera:</label>
  <select name="planillera" id="planillera">
  <option value="<?php $_SESSION['planillera']  = 'Rosa'; ?>">Rosa</option>
  <option value="<?php $_SESSION['planillera']  = 'Cristina'; ?>" >Cristina</option>
  <option value="<?php $_SESSION['planillera']  = 'Maria'; ?>" >Maria</option>
  <option value="<?php $_SESSION['planillera']  = 'Romina'; ?>">Romina</option>
  <option value="<?php $_SESSION['planillera']  = 'Julieta'; ?>" >Julieta</option>
  <option value="<?php $_SESSION['planillera']  = 'Victoria'; ?>" >Victoria</option>
  </select>

<input type="submit" id='enviar' value="Registrar viaje" formaction="registrar_viaje.php">


</form>

1 个答案:

答案 0 :(得分:3)

$_SESSIONselect的工作方式不是这样。

您要做的只是执行PHP,在其中多次设置$_SESSION的值-因此为什么它总是分配最后一个值。

您的选择应如下所示:

  <select name="planillera" id="planillera">
  <option value="Rosa">Rosa</option>
  <option value="Cristina">Cristina</option>
  <option value="Maria">Maria</option>
  <option value="Romina">Romina</option>
  <option value="Julieta">Julieta</option>
  <option value="Victoria">Victoria</option>
  </select>

然后在registrar_viaje.php内部执行操作:

$_SESSION['plankillera'] = $_POST['planillera'];

最后,您将重定向到另一个页面。