Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP电子邮件表单未发送_Php_Html_Forms_Sendmail - Fatal编程技术网

PHP电子邮件表单未发送

PHP电子邮件表单未发送,php,html,forms,sendmail,Php,Html,Forms,Sendmail,我知道以前可能有人问过这个问题,我试图梳理大量类似的问题。从我所收集到的信息来看,这应该是可行的,但我正在花大量的时间来弄清楚这为什么不会发送。我正在尝试学习php的正确实现,但对于一个非常简单的邮件程序,我遇到了一个问题。我开始怀疑这可能是我的主机的问题,但我想我应该先按堆栈运行它 php位于一个单独的文件sendmail.php中,该文件由它后面的表单调用,当然,它位于一个单独的html文档中。我在MailDir/new/目录中没有收到任何错误消息,但我也没有收到任何测试电子邮件,无论是收件

我知道以前可能有人问过这个问题,我试图梳理大量类似的问题。从我所收集到的信息来看,这应该是可行的,但我正在花大量的时间来弄清楚这为什么不会发送。我正在尝试学习php的正确实现,但对于一个非常简单的邮件程序,我遇到了一个问题。我开始怀疑这可能是我的主机的问题,但我想我应该先按堆栈运行它

php位于一个单独的文件sendmail.php中,该文件由它后面的表单调用,当然,它位于一个单独的html文档中。我在MailDir/new/目录中没有收到任何错误消息,但我也没有收到任何测试电子邮件,无论是收件箱还是垃圾邮件。明显地my@email.com通常会被替换

if($_POST) {

$emailTo = 'my@email.com';
$subscriber_email = ($_POST['email']);

if(!isEmail($subscriber_email)) {
    $array = array();
    $array['valid'] = 0;
    $array['message'] = 'Insert a valid email address!';
    echo json_encode($array);
}
else {
    $array = array();
    $array['valid'] = 1;
    $array['message'] = 'Thanks for signing up!';
    echo json_encode($array);

    // Send email
$subject = 'New Subscriber!';
$body = "We have a new subscriber!\n\nEmail: " . $subscriber_email;
$headers = "From: " . $subscriber_email . " <" . $subscriber_email . ">" . "\r\n" . "Reply-To: " . $subscriber_email;
mail($emailTo, $subject, $body, $headers);
}
}




<form class="form-inline" action="sendmail.php" method="post">
                    <input type="text" id="email" name="email" placeholder="Enter your email...">
                    <button type="submit" class="btn">Subscribe</button>
                </form>
如果您能提供任何帮助,我将不胜感激。如果这是一个我一直无法解决的常见问题,我再次表示歉意


干杯

您是否在本地机器上测试此功能?添加错误报告全部;和ini设置“显示错误”,1;要查看出了什么问题Sergei-这是在远程服务器付费主机上测试的Andrew-这些错误应该如何显示?我在else语句后添加了您的行。我还在Firefox中运行了这个表单,firebug处于打开状态,在控制台选项卡中没有看到错误/警告/调试信息。控制台返回:POST 200 OK 169ms仍然没有电子邮件。您看到JSON了吗?还要检查邮件的返回值。如果邮件===false,则失败。另外,您使用的是哪家主机提供商?您是否可以访问php.ini文件以查看邮件设置?