Php 在表单验证和提交后回显其他内容
如何在我验证并提交表单后清除页面内容并显示其他内容Php 在表单验证和提交后回显其他内容,php,forms,validation,Php,Forms,Validation,如何在我验证并提交表单后清除页面内容并显示其他内容 <?php if(isset($_POST['Confirm'])) { $to = "email@email.com"; $error = 0; $first_name = $_POST['first_name']; //Validation things if(trim($first_name) == '') {$erro
<?php
if(isset($_POST['Confirm'])) {
$to = "email@email.com";
$error = 0;
$first_name = $_POST['first_name'];
//Validation things
if(trim($first_name) == '') {$error = 1; $first_namerr = 1;}
$msg ="
First Name:$first_name
-------------------------
";
$sub ="Contact";
$from = "From: Support form";
@mail($to, $sub, $msg, $from);
//How to clear actual content and echo other ?
}
}
?>
<form name="contact" id="contact" method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">
<label for="first_name" class="inner_text"><?php if ($error != 0){ if ($first_namerr == 1) {print("<font style='color: Red;'>");} }?>First Name<?php if ($error != 0){if ($first_namerr == 1) {print("</font>");}} ?></label>
<input id="first_name" name="first_name" size="30" type="text" value="<? echo $first_name; ?>" /><?php if ($error != 0){ if ($first_namerr == 1) {print('<img src="images/error.gif">');} }?>
<input type="submit" id="Confirm" name="Confirm" value="Confirm" />
</form>
您可以使用if/else语句来控制显示的内容,例如:
<?php
if (isset($_POST['Confirm'])) {
// Your mail code
?>
Thank you, your message has been sent! <!-- This content is shown after form submission -->
<?php } else { ?>
<!-- Display your email form -->
<?php }; ?>
谢谢,您的信息已经发送!
使用if/else控制结构。我在第81行得到一个错误,找到了这个代码
。错误告诉我:PHP解析错误:语法错误,意外的“}”是的,您还可以嵌套if/else语句。@focusoft-似乎对我有用,可能是您意外修改了代码,或者您有太多的关闭}
。如果您希望将代码发布到codepad网站,我可以尝试发现错误。我知道我的错误在哪里。我还想问:我可以在表单提交后添加HMTL页面作为内容吗?不管怎样,我都要考试。谢谢。是的,你可以使用focusoft。但是,明智地使用它,应该在两个“页面”中显示的任何代码都应该放在if/else之外。在if/else两种情况下都没有设计/布局代码的意义!