【问题标题】:Submiting form to email address将表格提交到电子邮件地址
【发布时间】:2014-02-28 13:19:33
【问题描述】:

我正在尝试输入发送到我的收件箱的电子邮件地址,以便当用户在表单中输入他的电子邮件时,我会收到有关它的电子邮件通知。

这是php:

<?php
if($_POST){
    $email = $_POST['email'];

//send email
    mail("email@email.com", "Newsletter Signup:" .$email);
}
?>

由于 atm 无法正常工作,我做错了什么?

【问题讨论】:

  • mail("email@email.com", "Newsletter Signup:", $email);
  • 都在同一个域上?如果您删除 _POST 检查并使用 ?email=xxx 在浏览器中打开 url,它会起作用吗?
  • 删除“.”正如 Daan 所建议的那样,它可以工作,但电子邮件现在是空白的,没有显示输入的电子邮件地址。
  • @AlexK。 PHP 文件在外部托管。

标签: php email


【解决方案1】:

这个问题有什么问题

您的邮件无法送达的原因可能真的是任何原因。检查您的邮件服务器和网络服务器的环境。

  • 检查您的电子邮件帐户是否有垃圾邮件过滤器
  • 您的互联网提供商可能因为未验证的发件人地址而阻止了电子邮件
  • 防火墙问题
  • 等等……

如何解决问题

由于php中的mail()函数实现是返回一个布尔值,你可以使用这个返回值来检测错误:

<?php [...]

$email = $_POST['email'];

$success = mail("email@email.com", "Newsletter Signup:", $email);

if (!$success) {
  $error = error_get_last();
  var_export($error);
}

[...] ?>

也许这会帮助您找到问题所在。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-10
    • 2016-03-07
    • 1970-01-01
    • 1970-01-01
    • 2020-02-24
    • 2018-11-17
    • 2018-11-06
    • 1970-01-01
    相关资源
    最近更新 更多