2014-03-27 32 views
0

我有一个PHP页面。底部有一个联系表单。我想要做的是在发送邮件时隐藏联系表单,而不是显示感谢的一部分。意味着当客户第一次到达页面时,表格就会显示出来。提交后,谢谢部分显示。显示隐藏部分的PHP页面

我已经看到它完成,但没有任何线索如何。

我有一个想法,当页面加载它必须检查变量,看看邮件是否发送,但也许这是错误的。

+3

你需要做一些PHP的入门教程。你所描述的是通过条件输出来实现的,即if/else。去尝试一些东西,然后回来,并发布一些代码,如果你卡住了。 – Utkanos

回答

0

当我需要这样的东西,我通常命名提交按钮“提交”并检查它是否被设置...

<input type="submit" name="submit" value="Send form"> 

的,而PHP(使用$_GET$_POST相应)...

<? 
    if(isset($_POST['submit'])) 
    { 
    // Show "Thank you" 
    } 
    else 
    { 
    // Show form 
    } 
?> 
0

当我做这样的事情我倾向于一个按钮添加到我的表格,并给它一个名称

<button type="submit" id="submit" name="submit">Submit</button> 

然后在我的PHP检查,如果表单已提交

<?php 
if(isset($_POST['submit'])) { 
    // Actions After Submit 
} 
else 
{ 
// Load The Form 
} 
?> 
0

这是相当相当简单;后mail()

添加exit("Message...");在你的PHP在mail(...)的位置,你会做以下几点:

mail($to,$subject,$message,$headers); 
    exit("Thank you, your message has been sent. <a href='home.php'>Click here</a> to return to our Website."); 

下面是使用纯PHP完整基本解决方案,因为没有代码已经提供。

以下内容旨在作为同一文件中的所有内容运行。

<?php 

    if(isset($_POST['send'])) { 
    // Prepare the email 
    $to = '[email protected]'; 

$mail_from = $_POST['email']; 
    $subject = 'Message sent from website'; 
    $message = $_POST['message']; 

$name = $_POST['name']; 
$header = "From: $name <$mail_from>"; 

    // Send it 
    $sent = mail($to, $subject, $message, $header); 
    if($sent) { 

    exit("Thank you, your message has been sent. <a href='home.php'>Click here</a> to return to our Website."); 

    } else { 
    echo 'Sorry, your message could not be sent. The error has been logged.'; 
    } 
    } // closing brace for if(isset($_POST['send'])) 
?> 

<form method="post" action=""> 
    <p> 
     <label for="name">Name</label> 
     <input type="text" id="name" name="name" /> 
    </p> 
    <p> 
     <label for="email">Email</label> 
     <input type="text" id="email" name="email" /> 
    </p> 
    <p> 
     <label for="message">Message</label> 
     <textarea id="message" name="message" rows="6" cols="30"></textarea> 
    </p> 
    <p> 
     <input type="submit" name="send" value="Send message" /> 
    </p> 
</form> 
0

这很简单,只是如果和其他人,样品的形式是下面

<?php 
if(isset($_POST['submit'])) { ?> 
//write your other actions on form data 
<h2>THANK YOU</h2> 
<?php 
} else { ?> 
<form name="login" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 
<label><h4>Username:</label> 
<input type="text" name="username"> 
<input type="submit" name="submit" value="submit"/> 
</form> 
<?php } 
?>