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

Forms 在Magento中提交自定义联系人表单后重定向到自定义php文件,forms,magento,action,Forms,Magento,Action,我制作了一个CMS页面以包含我创建的表单,但希望表单操作发送到/template/contacts/report.phtml 目前,我已经在我的形式,但我知道这是不正确的 <form action="report.phtml" id="contactForm" method="post"> 谢谢你的帮助 Magento内置了Magento标准联系人表单。您可以通过浏览器www.yourdomain.com/contacts访问它 它由app/code/core/Mage/Con

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

目前,我已经在我的形式,但我知道这是不正确的

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


谢谢你的帮助

Magento内置了Magento标准联系人表单。您可以通过浏览器www.yourdomain.com/contacts访问它

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

公共函数索引()

表单上的操作由同一个控制器和一个名为

公共功能postAction()

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

通过黑客攻击,您可以使用与postAction()相同的代码创建名为customAction()的新函数。您可以复制app/code/core/Mage/Contacts/controllers/indexController.php,并在app/code/local/Mage/Contacts/controllers/indexController.php中创建新文件

复制整个

公共功能postAction(){

直到函数关闭

}

然后将其粘贴并重命名函数customAction()。如果你想定制重定向。您可以更改customAction()中的代码

以及你可以指出的表格上的动作


希望有帮助。

您的“操作”不能是report.phtml(这是一个模板文件),您应该将您的值发布到控制器。看看@app/code/core/Mage/Contacts/controllers/IndexController.php这是对现有联系人页面的补充。我是否只需要向app/code/core/Mage/Contacts/controllers/IndexController.php添加新值?谢谢。请提供更多关于你正在尝试做什么的信息。您可以将许多不同的表单发布到contacts IndexController我创建了一个自定义表单,在用户单击submit后,我希望将表单连接到report.phtml以处理表单。感谢您的帮助。通常,.phtml仅用于显示,而不用于业务逻辑(如处理表单)。要显示“.phtml”,您需要使用控制器操作来显示它。因此,您可能需要创建一个带有控制器的自定义模块,也可能需要重用联系人
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');