【问题标题】:Magento - Get custom form field value from product pageMagento - 从产品页面获取自定义表单字段值
【发布时间】:2013-08-26 21:56:18
【问题描述】:

我有一家 Magento 商店,我的客户想在其中销售个性化礼品。例如带有客户女朋友姓名的铅笔。

在产品页面中,我设法以product_addtocart_form 的形式显示了一些像这样的字段:

<input type="text" value="" id="gift_name" name="gift_name">

现在我有一个观察者,当用户进行结帐 (checkout_type_onepage_save_order_after) 时,它应该获得该自定义字段值,但我不知道如何。

我尝试了Mage::app()->getFrontController()->getRequest()->getParam('gift_name'); 之类的方法,但没有成功。

我认为这个参数就像数量一样被传递给表单,但是我该如何检索它呢?

【问题讨论】:

    标签: php forms magento


    【解决方案1】:

    您可以使用下面的代码从您的观察者函数中的 url 获取参数

    $request    = $observer->getEvent()->getData('front')->getRequest();
        $parameter  = $request->yourparametername;
    

    【讨论】:

    • 嗨 Zaheerabbas,不幸的是它无法正常工作$request = $observer->getEvent()->getData('front')->getRequest(); $gift_name = $request->gift_name; 这让我的购物车在没有订单的情况下不断循环。您的解决方案与我没有的 url 参数有关吗?
    • 只打印像 print_r($request->getParams()) 这样的参数数组,看看输出是什么。你有没有得到数组中的任何参数?
    • 不打印任何东西,我猜错误在$request = $observer->getEvent()->getData('front')->getRequest();,因为如果我用$request = 'test'替换它,它正在打印“测试”。需要明确的是,我没有 url 参数,我想获得那个 值,就像系统获得数量一样,粗鲁和粗鲁:) 还有其他解决方案吗?
    • 哦,那么你可以使用类似的东西来获取 GET 或 POST 值 Mage::app()->getRequest()->getPost();,Mage::app()->getRequest()->getParam('myargument');
    猜你喜欢
    • 1970-01-01
    • 2012-02-16
    • 2021-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-28
    • 1970-01-01
    相关资源
    最近更新 更多