【问题标题】:display a message after submit and refresh提交并刷新后显示消息
【发布时间】:2020-12-06 03:14:02
【问题描述】:

我试图在我的表单提交后显示一条消息,我可以让表单提交并刷新页面,但不确定如何在刷新后添加消息。

我对PHP一无所知,所以很抱歉它的答案很明显

谢谢

我的 html 和 PHP(如果需要)

<form action="action.php" method="POST" target="my_iframe" onsubmit="setTimeout(function(){window.location.reload();},10);">
                    
                        <input type="text" id="name" name="name" placeholder="name" required="required">
    
                        <input type="email" id="email" name="email" placeholder="email" required="required">
                
                        <input type="tel" id="phone" name="phone" placeholder="phone">
                        
                        <div class="form-row" style="display:none;"><input type="hidden" name="url" placeholder="URL"></div>
                
                        <textarea id="message" name="message" placeholder="message" style="height:200px"  required="required"></textarea>
                        
                        <input id="submit" type="submit" value="submit">
                        
                    </form>
                    <iframe name="my_iframe" width="1" height="1" style="border:none"></iframe>



<?php

$to = 'zoeharrisondesign@gmail.com';
$subject = 'New Message Recieved!';
$from = $_POST['email'];
$phone = $_POST['phone'];
$message = $_POST['message'];
$name = $_POST['name'];

//check honeypot
    if( !empty( $honeypot ) ) {
        echo 'There was a problem';
    }
 
// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
 
// Create email headers
$headers .= 'From: '.$from."\r\n".
    'Reply-To: '.$from."\r\n" .
    'X-Mailer: PHP/' . phpversion();
 
// Compose a simple HTML email message
$message = "$message \r\n |
                From $name \r\n |               
                Tel: $phone";


 
// Sending email
if(mail($to, $subject, $message, $headers)){
    echo 'Your message has been sent successfully.';
} else{
    echo 'Unable to send email. Please try again.';
}

?>

【问题讨论】:

标签: php html forms


【解决方案1】:

更新您的 php 发送电子邮件至此

    if (mail($myEmail, $subject, $message)){
     $success = "Message sent successful";
    }else{
     $success = "Message Sending Failed.";
    }

然后在您的 html 代码中添加此 php 代码添加此代码以显示消息。将它放在表单 html 标记的顶部。

<?php
 if (isset($success)){ echo "<div>" . $success . "</div>";}
?>

如果您愿意,您甚至可以在消息上添加一些样式。

【讨论】:

    猜你喜欢
    • 2014-05-29
    • 2016-05-03
    • 2023-03-10
    • 1970-01-01
    • 2013-07-18
    • 2015-04-27
    • 2016-03-19
    • 1970-01-01
    • 2013-06-29
    相关资源
    最近更新 更多