在阅读W3Schools chapert认证后,我已经使用send self方法设置了表单和验证,并且必需的字段和电子邮件验证工作。
但我现在有点担心如何将经过验证的数据发送到下一步,这将是我的原始php文件,其中包含我的电子邮件地址..
我尝试使用此功能但无济于事:
//if valid then redirect
if($valid){
header('Location: http://somewhere.co.uk/testvalidation2.php');
exit();
}
}
如果有人可以帮助我,我会非常感激,因为我对php很新。 谢谢你的阅读。
答案 0 :(得分:1)
不要重定向,你将丢弃你拥有的任何POST数据(并且验证输入中通常没有多少意义,这是POST的用途)。
只需将表单处理逻辑放在同一页面中即可。
如果您愿意,可以将其放在不同的文件中include()
。
答案 1 :(得分:0)
如果您正在尝试自行提交文件,那么您只需了解您的网页有多个用途。起初有点令人困惑,但是当你得到它时,它会有意义。您的页面必须能够:
虽然你可以在验证时将数据发送到另一个页面(如另一个答案中所述),你也可以在一个页面中实现下面的基本逻辑/伪代码:
IF submit button not pressed //(first time in, just show page)
$showform=true; //to be used later to show the form or not
ELSE //must check data
IF (DATA IS GOOD)
//do your emailing
$showform = false; //All is good, don't show form - maybe just success message
ELSE
//create an error message
$showform=true; //need to show form again
ENDIF
ENDIF
IF ($showform)
//show the html form - sticky form is usually preferable.
希望这有点意义......