在Magento中提交自定义联系表单后重定向到自定义php文件

时间:2013-03-28 21:05:17

标签: forms magento action

我创建了一个CMS页面,其中包含我创建的表单,但希望将表单操作发送到/template/contacts/report.phtml

目前我的表格中有这个,但我知道它不对。

<form action="report.phtml" id="contactForm" method="post">

感谢您的帮助!

1 个答案:

答案 0 :(得分:-1)

Magento建立了magento标准联系表格。您可以从浏览器www.yourdomain.com/contacts

访问它

app / code / core / Mage / Contacts / controllers / indexController.php 中的控制器和名为

的函数管理
  

public function indexAction()

并且表单上的操作位于http://www.yourdomain.com/contacts/index/post/中,由同一个控制器和一个名为

的函数管理
  

public function postAction()

如果您希望拥有完全自定义的表单(通过添加额外的字段),Magento方式,您需要创建一个扩展并拥有自己的控制器,您可以从浏览器访问它。

黑客方式,您可以使用与postAction()相同的代码创建名为customAction()的新函数。您可以复制 app / code / 核心 /Mage/Contacts/controllers/indexController.php 并在 app / code / local /Mage/Contacts/controllers/indexController.php

并复制整个

  

public function postAction(){

直到功能关闭。

  

}

然后粘贴它并重命名函数customAction()。如果你想自定义重定向。您可以更改customAction()

中的代码
Mage::getSingleton('customer/session')->addSuccess(Mage::helper('contacts')->__('Your inquiry was submitted and will be responded to as soon as possible. Thank you for contacting us.'));
$this->_redirect('*/*/');

Mage::getSingleton('customer/session')->addSuccess(Mage::helper('contacts')->__('Your inquiry was submitted and will be responded to as soon as possible. Thank you for contacting us.'));
$this->_redirect('http://yourdomain/redirect_url');

您表单上的操作可以指向http://www.yourdomain.com/contacts/index/custom/

希望有帮助。