【发布时间】:2014-08-17 16:59:46
【问题描述】:
所以我有一个注册表单。一个是register.php,它是实际的形式。另一个是r.php,它处理它。所以我使用会话然后我将错误消息从r.php 发送到register.php。问题是由于某种原因我只能弄清楚如何显示 one
if($name === ''){
$_SESSION['name_req'] = 'Make sure to enter a name';
header('Location: register.php');
exit();
}
elseif($name > 255){
$_SESSION['name_len'] = 'Enter a shorter name';
header('Location: register.php');
exit()
}
这段代码基本上将消息发送到register.php 然后我用
<?php echo isset($_SESSION['name_req']) ? $_SESSION['name_req'] : '';?>
问题是,如果我一次只显示一个错误,而我想一次显示所有错误。有任何想法吗?
【问题讨论】:
-
exit()之后的所有代码都不执行! -
那么如果我摆脱它,应该会好吗? @贝拉什
-
如果没有手动编辑,只要浏览器窗口打开,会话变量就会持续存在。请务必在代码中的某处取消设置会话,否则如果没有错误,甚至可能会显示消息。
-
可能是错字,但您的 $name 长度检查中缺少
strlen()。 -
我知道我正在使用
<?php unset($_SESSION['message']);?>取消设置@MarkNijboer
标签: php html mysql forms validation