使用会话变量进行php表单验证

时间:2011-11-05 08:10:14

标签: php forms validation session

我在php中有一个注册表单,它将数据发送到另一个php表单以插入到mysql中

如果缺少任何字段,则会使用会话变量(value="<?php echo $_SESSION['error']; ?>")将错误消息发送回注册表单以及用户已填写的所有字段(这样他们就不必填写它再次使用会话变量..

对于使用value="<?php echo $_SESSION['fname']; ?>"的文本框工作正常..但这似乎不适用于下拉框或单选按钮..

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

下拉框和单选按钮使用选定或单击索引。如果选中或单击它,则需要检查每一个并为其指定适当的属性。

 <?php if($_SESSION['dropBox1'] == "value") echo ' selected="selected"'; ?>

答案 1 :(得分:1)

首先,您不应将表单提交到其他页面进行验证。在当前页面中执行此操作。下拉列表和单选按钮value属性是与选择关联的值。不显示或以任何方式告诉它它是所选项目。 @James打败了我关于如何显示哪个被选中的代码。

<select>
  <option value="0"  <?php echo $_SESSION['dropBox1'] == "0" ? ' selected="selected"' : '' ?>>option1</option>
  <option value="1"  <?php echo $_SESSION['dropBox1'] == "1" ? ' selected="selected"' : '' ?>>option2</option>
  <option>etc..</option>
</select>