PHP mailto() 表单

标签 php html email mailto

我目前正在处理一个联系表,它似乎正在处理,但我没有收到电子邮件。我不确定问题出在哪里。我猜它在我的 PHP 中,但我看不出问题出在哪里。

HTML 标记:

<form method="post" id="contact" class="peThemeContactForm" action="mail.php">
    <div id="personal" class="bay form-horizontal">
        <div class="control-group"><!--name field-->
            <div class="controls">
                <input class="required span9" type="text" name="author" data-fieldid="0" value="Full Name" onclick="if(this.value=='Full Name') this.value=''" onblur="if(this.value=='') this.value='Full Name'">
            </div>
        </div>
        <div class="control-group"><!--email field-->
            <div class="controls">
                <input class="required span9" type="email" name="email" data-fieldid="1" value="Your Email" onclick="if(this.value=='Your Email') this.value=''" onblur="if(this.value=='') this.value='Your Email'">
            </div>
        </div>
        <div class="control-group"><!--message field-->
            <div class="controls">
                <textarea name="message" rows="12" class="required span9" data-fieldid="2" onclick="if(this.value=='Type Message') this.value=''" onblur="if(this.value=='') this.value='Type Message'">Type Message</textarea>
            </div>
        </div>
        <div class="control-group">
            <div class="controls send-btn">
                <button type="submit" class="contour-btn red">Send Message</button>
            </div>
        </div>
    </div>
    <div class="notifications">
        <div id="contactFormSent" class="formSent alert alert-success">
            <strong>Your Message Has Been Sent!</strong> Thank you for contacting us.</div> 
        <div id="contactFormError" class="formError alert alert-error">
            <strong>Oops, An error has ocurred!</strong> See the marked fields above to fix the errors.</div>
    </div>
</form>

PHP:

<?php
if(isset($_POST['email'])){
        $mailTo = "jake_ols@live.com";
        $subject = "mail from web";
        $body = "New message from web
<br><br>
FROM: ".$_POST['email']."<br>
NAME: ".$_POST['author']."<br>
COMMENTS: ".$_POST['message']."<br>";   
        $headers = "To: Jake <".$mailTo.">\r\n";
        $headers .= "From: ".$_POST['author']." <".$_POST['email'].">\r\n";
        $headers .= "Content-Type: text/html";
        //envio destinatario
        $mail_success =  mail($mailTo, utf8_decode($subject), utf8_decode($body), $headers);        
}
?>  

最佳答案

您最有可能的回答是服务器没有启用邮件

使用 phpinfo() 查找您应该编辑的 ini 文件,并确保您的 php 服务器已设置为发送邮件。

; For Win32 only.
sendmail_from = me@example.com

或者使用 SMTP 并连接到像 Mailgun 这样的服务 https://documentation.mailgun.com/quickstart-sending.html#send-via-smtp

关于PHP mailto() 表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21373260/

相关文章:

javascript - 当我使用 .html() 函数时,jQuery 1.3.2 在 IE 上添加了 sizset ='' sizcache ='' 属性

ios - 如何在 swift 中允许电子邮件字符串中存在空格?

基于 PHP 的 Web 应用程序和群发邮件

php - 如何在两个不同的表中进行搜索?

html - 右侧边栏显示在内容 div 元素下方

jquery - 设计 DIV 以缩小垂直间隙

python - 从 Gmail API 解码 MIME 电子邮件 -\r\n 和 3D - Python

php - WooCommerce - 添加到购物车时忽略未选择的变体

javascript - PHP onchange=this.form.submit() 下拉菜单 -> 第一个值丢失

php - 使用 php 变量更新 mysql 数据库