ip - Magento CE 1.7 获取联系表单中包含的用户 IP

标签 ip magento-1.7 spam-prevention

我的 Magento CE 1.7 站点联系表单之一正在被人类垃圾邮件农场发送垃圾邮件,从而绕过了在此类表单上实现的 Google reCaptcha。每天收到的垃圾邮件高达 300 封已成功验证验证码的电子邮件。

由于正在使用联系表单,因此电子邮件中没有发送发件人 IP 地址,因此我需要有关如何获取用户 IP 并将其包含在我收到的垃圾邮件联系电子邮件中的帮助和指导.

这个想法是禁止用于发送垃圾邮件的 IP。

获取用户IP的php调用

echo Mage::helper('core/http')->getRemoteAddr(true);

我如何在联系表单中使用它并通过联系表单联系人提交 IP。

我感谢所有的帮助。

致以诚挚的问候

棒极了

最佳答案

安德鲁,

非常感谢。

对代码进行此调整后会显示正确的 IP:

public function postAction()
{
$post = $this->getRequest()->getPost();
if ( $post ) {
    $translate = Mage::getSingleton('core/translate');
    /* @var $translate Mage_Core_Model_Translate */
    $translate->setTranslateInline(false);
    try {
        $postObject = new Varien_Object();
        $postObject->setData($post);
        // Add the IP..
        $postObject->setData(
            'ip', 
            $_SERVER['REMOTE_ADDR'] 
        );

再次非常感谢

关于ip - Magento CE 1.7 获取联系表单中包含的用户 IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17400190/

相关文章:

php - PHP 中缺少 $_SERVER header ,但 Python 中存在 $_SERVER header

c - getnameinfo 原型(prototype)要求 sockaddr 而不是 sockaddr_in?

php - Magento 类方法覆盖不起作用

linux - Magento 1.7 - 一台服务器中的两个magento相互影响

java - Java中的垃圾邮件检测/垃圾邮件过滤系统

java - 在 java 中检索客户端 IP 地址时获取 request.getHeader ("X-FORWARDED-FOR"的空值?

unix - 如何确定 Solaris 系统的 IP 地址

magento - 如何在 magento 中进行压力/负载测试

php - Perl 正则表达式 X 修饰符的倒数

javascript - 使用 JavaScript 函数打印电子邮件地址以防止垃圾邮件有多好?