0

我尝试使用此示例来防止我的页面收到垃圾邮件,但是当我对其进行测试并将文本放入字段时,我的提交按钮仍在发送表单。我为我的网站使用formit。

这个想法是创建一个隐藏字段,如果垃圾邮件机器人在该隐藏字段中插入一些内容,则不会发送电子邮件。

有问题的例子

https://docs.modx.com/extras/revo/formit/formit.tutorials-and-examples/formit.using-a-blank-nospam-field

代码片段

<input type="hidden" name="workemail" value="" />
[[!FormIt? &validate=`workemail:blank`]]

我正在使用那里的确切代码,下面的代码是我的字段 - 我已确保该字段在标签内。

<input type="hidden" name="workemail" value="[[!+fi.workemail]]" />

我的表单代码看起来像

[[!Formit?
        &hooks=`spam,FormItSaveForm,email,redirect`
        &redirectTo=`122`
        &formName=`Contact Form`
        &formFields=`fname,title,company,email,options,subject,message`
        &emailTpl=`fi-contact_email`
        &emailSubject=`[[*contact_email_subject]]`
        &emailTo=`[[*contact_email_to_address]],candelari@hgp.com`
        &emailFrom=`[[*contact_email_from_address]]`
        &emailFromName=`[[*contact_email_from_name]]`
        &emailReplyTo=`[[+email]]`
        &submitVar=`contactform`
        &validate=`workemail:blank,
        fname:required,
        email:email:required,
        message:stripTags,
        username:blank`
      ]]

任何帮助表示赞赏,谢谢!

4

1 回答 1

0

也许下面的一些事情会奏效:

0)首先,额外更新MODX和FormIt,然后再试一次。

1)如果问题仍然存在,请尝试[[!+fi.workemail]]value属性中删除。

<input type="hidden" name="workemail" value="" />

2) 如果上一步没有帮助,请在表单中添加另一个字段。所以,它应该是:

<input type="hidden" name="workemail" value="" />
<input type="hidden" name="nospam:blank" value="" />

3)还尝试workemail从标记和表单调用中删除内容,而不是添加

<input type="hidden" name="nospam:blank" value="[[+fi.nospam]]" />

或者,看看其他选项,如ReCaptchaV2

于 2017-10-05T08:34:15.730 回答