0

我创建了一个简单的 html5 表单,我使用 php 邮件功能将表单邮寄到我的 gmail 帐户,但在提交该表单后我没有收到任何邮件。我没有使用任何在互联网上的本地主机。需要一些解决方案的家伙

index.html   <----- Contact Form ------>

<form action="mail.php" method="POST">
                        <input type="text" name="username" id="one" class="form-input" placeholder="Name">
                        <input type="text" name="phone" id="two" class="form-input" placeholder="Mobile Number">
                        <input type="text" name="email" id="three" class="form-input" placeholder="Email Address">

                        <select class="form-input" id="four" name="place">
                            <option value="volvo">Centers</option>
                          <option value="volvo">India</option>
                          <option value="saab">USA</option>
                          <option value="mercedes">Singapore</option>
                          <option value="audi">China</option>
                          <option value="audi">Pakistan</option>
                        </select>

                        <div class="submit">
                            <input type="submit" name="submit" class="submit-btn">
                        </div>

                    </form>

mail.php  <------ mail function written here ------>

<?PHP
$sender = $_POST['email'];
$recipient = 'jhon@gmail.com';

$subject = "php mail test";
$message = "php test message";
$headers = 'From:' . $sender;

if (mail($recipient, $subject, $message, $headers))
{
    echo "Message accepted";
}
else
{
    echo "Error: Message not accepted";
}
?>
4

2 回答 2

1

如果您使用 gmail 发送邮件,请单击此链接https://myaccount.google.com/intro/security?pli=1#connectedapps并转到允许不太安全的应用程序(登录到您的 gmail.com 后)更改它进入是的..

于 2018-05-24T11:19:08.910 回答
0

一些托管服务提供商没有启用 mail()。因此,在发送邮件之前,您需要确定 mail() 是否启用。使用以下内容进行测试。

<?php
if ( function_exists( 'mail' ) )
{
    echo 'mail() is available';
}
else
{
    echo 'mail() has been disabled';
}
?>

如果启用了邮件功能但仍然没有发送邮件,请尝试使用

@mail($recipient, $subject, $message, $headers) 

它强制使用服务器中的 mail()。

于 2018-05-23T11:04:06.230 回答