我正在尝试将$ _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>
答案 0 :(得分:3)
$_SESSION
或select
的工作方式不是这样。
您要做的只是执行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'];
最后,您将重定向到另一个页面。