我正在尝试使用NMS FormMail.pl为我的网站设置一个简单的表单邮件程序脚本。无论我做什么,都会给我一个错误说:
错误:收件人不良或缺失
发送到FormMail的数据中没有指定收件人或收件人无效。请确保您已填写收件人表单字段,其中包含已在@recipients或@allow_mail_to中配置的电子邮件地址。有关填写recipient / allow_mail_to表单字段和变量的更多信息,请参阅自述文件。
问题是,我已经无数次确定表单上的收件人字段与完全与我在脚本的@allow_mail_to部分中的字段相同。我试过抓住最新版本的脚本,将电子邮件地址从表单复制粘贴到脚本,反之亦然,将它们放在@和之前。在电子邮件中取出它们,甚至取出表单上的收件人字段(当我这样做时,它仍然给我错误,尽管自述文件说它只会发送给@allow_mail_to字段中的第一个人。)
以下是我对脚本以及表单标记的配置:
BEGIN
{
$DEBUGGING = 1;
$emulate_matts_code= 0;
$secure = 1;
$allow_empty_ref = 1;
$max_recipients = 1;
$mailprog = '/usr/sbin/sendmail -oi -t';
$postmaster = '';
@referers = qw(--.com);
@allow_mail_to = qw(steven@--.com --.com localhost);
@recipients = ();
%recipient_alias = ();
@valid_ENV = qw(REMOTE_HOST REMOTE_ADDR REMOTE_USER HTTP_USER_AGENT);
$locale = '';
$charset = 'iso-8859-1';
$date_fmt = '%A, %B %d, %Y at %H:%M:%S';
$style = '/css/nms.css';
$no_content = 0;
$double_spacing = 1;
$wrap_text = 0;
$wrap_style = 1;
$address_style = 1;
$send_confirmation_mail = 0;
$confirmation_text = <<'END_OF_CONFIRMATION';
From: you@your.com
Subject: form submission
Thank you for your form submission.
END_OF_CONFIRMATION
# You may need to uncomment the line below and adjust the path.
# use lib './lib';
# USER CUSTOMISATION SECTION
# --------------------------
# Place any custom code here
# USER CUSTOMISATION << END >>
# ----------------------------
# (no user serviceable parts beyond here)
}
收件人表单字段:
<input name="recipient" type="hidden" id="recipient" value="steven@--.com">
如果有帮助,我使用Dreamweaver CS6来创建网站,包括表单。我使用记事本来修改FormMail.pl。运行的服务器是Apache。
答案 0 :(得分:0)
我最终使用TFmail.pl由同一个人而不是FormMail.pl,最终工作得很好。