我一直在偶爾從我的Magento商店的聯繫表單中收到垃圾郵件。我不願意添加Captcha,所以想嘗試在表單中添加隱藏字段。如果填寫了該字段,表單將不會被提交(大多數機器人自動完成所有字段)。Magento - 將隱藏字段添加到聯繫表
我知道如何添加字段,但沒有人知道如何添加代碼以拒絕表單,如果該字段有值?
謝謝!
我一直在偶爾從我的Magento商店的聯繫表單中收到垃圾郵件。我不願意添加Captcha,所以想嘗試在表單中添加隱藏字段。如果填寫了該字段,表單將不會被提交(大多數機器人自動完成所有字段)。Magento - 將隱藏字段添加到聯繫表
我知道如何添加字段,但沒有人知道如何添加代碼以拒絕表單,如果該字段有值?
謝謝!
我不確定你要去哪裏,但也許這會有所幫助。
的標準控制器是Mage_Contacts_IndexController
,它位於:應用程序/代碼/核心/法師/聯繫人/控制器/ IndexController.php
當然,你要麼想將它複製到local
目錄或用你自己定製的模塊擴展這個類。你可以嘗試使用這個文件的副本。我希望這有幫助。
我對尋找人的次要貢獻 - 這種防禦稱爲蜜罐。所以你去了。
在Magento的1.3.2,我說這在我的控制器的複製75線在code/local/Mage/Contacts/controllers/IndexController.php
:
// check the spam honeypot
if (!empty($post['yummy'])) {
$error = true;
}
其中「美味」是隱藏字段我template/contacts/form.phtml
增加。
我想你可以把隱藏字段,而你在這樣的主塊創建表單:
$fieldset->addField('entity_type_id', 'hidden', array(
'name' => 'entity_type_id',
'value' => 11
));
,並在此之後,你可以在saveAction()檢查,以檢查這些值設置或不是