简单的HTML / PHP表单需要永远发送电子邮件

I have this simple email form using the POST function with a PHP mailto() function. I have PHP lines within my form as values to the fields. It takes way too long to send. Any help is appreciated.

PHP:

<?php

if ($_POST['submit']) {

    if (!$_POST['name']) {
        $error="<br/>-Please enter your name";
    }
        if (!$_POST['email']) {
        $error.="<br/>-Please enter your email";
    }
        if (!$_POST['message']) {
        $error.="<br/>-Please enter a message";
    }
        if (!$_POST['check']) {
        $error.="<br/>-Please confirm you're real";
    }

    if ($error){
        $result="Ohh no, somethings not right... $error";
    }
    else {

        mail("email@email.com","website contact form","Name: ".$_POST['name']."
            Email: ".$_POST['email']."
            Message: ".$_POST['message']);

        {
            $result="Thank you, I will reply shortly.";
        }
    }
}
?>

HTML:

<form action="#contactme" method="post" role="form">
    <div class="form-group">
        <input type="text" name="name" placeholder="Enter your name" class="form-control form-control-lg" value="<? echo $_POST['name']; ?>" >
    </div>
    <div class="form-group">
        <input type="email" name="email" placeholder="Enter your email" class="form-control form-control-lg" value="<? echo $_POST['email']; ?>">
    </div>
    <div class="form-group">
        <textarea name="message" rows="5" class="form-control" placeholder="Your message..."><? echo $_POST['message']; ?> </textarea>
    </div>
    <div class="checkbox">
        <label>
            <input type="checkbox" name="check"><span class="real"> I am real</span>
        </label>
    </div>
    <div align="center">
        <input type="submit" name="submit" class="btn btn-secondary btn-lg" value="Send">
    </div>
</form>
dtf579777
dtf579777 PHP的mailto()函数实际上很慢。加快速度的一种方法是在调用mailto()之前输出“谢谢”页面,这样用户就会注意到它。另一种方法是存储消息并运行cron作业以发送电子邮件。
接近 4 年之前 回复
dongxuanjiao0795
dongxuanjiao0795 此外,您还要从输入中删除任何BCC或CC。这样,您的脚本不会用于向使用机器人的群发邮件群发邮件。
接近 4 年之前 回复
doudao8283
doudao8283 您需要使用filter_input()。复选框也可以由机器人填写。
接近 4 年之前 回复
dongyang4615
dongyang4615 然后,当从您的邮件服务器发送电子邮件时,接收邮件服务器必须重做病毒检查等,然后您将被允许查看它。此外,如果您使用的邮件客户端每隔X分钟只检查一次电子邮件,这也会增加流程的时间
接近 4 年之前 回复
douhuai2015
douhuai2015 请记住,所有PHPmail()函数都会将您的邮件传递给邮件服务器。它是邮件服务器,完成所有实际发送的电子邮件。该过程将涉及病毒检查等,可能不会仅发送您的电子邮件。
接近 4 年之前 回复

1个回答



我已经在查询中完成了所有内容,现在它应该发送得更快,但也可能是这段代码有错误但是第一个查询 结构是正确的。</ p>

 &lt;?php 

if($ _POST ['submit']){

if if(!$ _ POST ['name '] ||!$ _ POST ['email'] ||!$ _ POST ['message'] ||!$ _ POST ['check'] ||){
$ error =“&lt; br /&gt; -Please 输入“;
} else
{

if if($ error){
$ result =”Ohh no,somethings not right ... $ error“;
}
else {

mail(“email@email.com”,“网站联系表”,“姓名:”。$ _ POST ['name']。“
电子邮件:”。$ _ POST ['email']。“
消息:” 。$ _ POST ['message']);

{
$ result =“谢谢,我会很快回复。”;
}
}&lt; - 如果你有错,请抓一个剪辑 离开。

}

}
?&gt;
</ code> </ pre>
</ div>

展开原文

原文

I have done everything in a query now it should be sent faster but it can also be that this code has an error but the first query is correct from the structure.

<?php

if ($_POST['submit']) {

    if (!$_POST['name'] || !$_POST['email'] || !$_POST['message'] || !$_POST['check'] ||) {
        $error="<br/>-Please enter";
    }else
{

 if ($error){
        $result="Ohh no, somethings not right... $error";
    }
    else {

        mail("email@email.com","website contact form","Name: ".$_POST['name']."
            Email: ".$_POST['email']."
            Message: ".$_POST['message']);

        {
            $result="Thank you, I will reply shortly.";
        }
    } <-- If you have a mistake, take a clip away.


}


}
?>

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐