2013-02-14 74 views
0

我正在尝试向联系人表单添加几个字段,以便我的客户在撰写时可以指示年度制作和车辆型号。Magento联系表单自定义

我刚刚将我的Magento安装从1.4.3升级到1.7.0.1。我之前的联系表单是一个黑客工作,这次我正在努力让它以正确的方式工作。阅读所有内容时,我尝试将<input type="text" size="15" value="" id="model_ext" name="bike_model_ext" class="required-entry input-text">添加到我的模板中的form.phtml中,然后在管理中的交易电子邮件模板中添加{{var data.model_ext}}。但那不行。我通过操纵文本确保后端的模板是正确的。我也知道form.phtml是正确的,因为我看到他们改变时的元素。

所以然后我超负责处理联系表格的控制器。我确认我的控制器正在处理它(它带有一个echo "it works"; die();)并且在那里,我正在寻找额外表单元素名称的POST数据,但在这里,我也遇到了访问数据的麻烦。环顾净,我尝试这样做:

  $comment = $this->getRequest()->getPost('comment'); 
      $extras=Array("year","make","model","model_ext"); 
      foreach($extras as $field) 
        $comment .= "\n$field:\t".$this->getRequest()->getPost($field); 
      $this->getRequest()->setParam('comment', $comment); 
      parent::postAction(); 

但同样,这就像不存在我的变量。在这里,再次,我知道我的代码正在执行,因为当我在那里遇到任何问题时,联系表单会崩溃以显示错误消息。

我会再在其上的清晨,但希望有一些简单的我失踪,随着更多的经验,这里有人能帮助我。

编辑:回答我正在使用ID键入变量,需要改为名称。

+1

在后它使用的名称不是ID:NAME = “bike_model_ext” 采取在考虑 – dagfr 2013-02-14 07:48:07

+0

是的!谢谢。这是修复。回答,我会接受。 – 2013-02-14 19:50:31

回答

1

对于那些有兴趣通过此修复程序的答案。

由表单使用名称,而不是ID生成的$ _POST和$ _GET价值。

在这种情况下,你必须改用model_ext的bike_model_ext。

亲切的问候,