2013-07-23 60 views
1

我在使用ComponentCreator创建的组件中有一个基本的前端表单。自定义Joomla组件中的表单

如何以及在哪里指导表单“行动”?我在哪里可以处理这个问题,以便我遵循MVC设计模式?我的表单位于视图中(default.php)

表单在提交时应该简单地插入数据库。我不想使用表单扩展,我尝试过这些,他们不符合我的要求。

回答

4

什么版本的Joomla?假设你不使用AJAX,然后直接指向你的控制器。

<form id='MyForm' method='post' action='index.php?option=com_mycomponent&task=myoperation'> 
<input type='text' name='myname'/> 
...</form> 

然后,你将有一个名为myoperation将处理表单中的所有的东西在你的控制器(Controller.php这样)的函数(不要忘记,当然令牌)

JSession::checkToken('request') or jexit(JText::_('JINVALID_TOKEN')); 
$jinput = JFactory::getApplication()->input; 
$add_name = $jinput->get('myname', '', 'STRING'); 
//whatever you need to do... 
//add to model if you wanted to add name to DB 
$model = &$this->getModel(); 
$model->updateDB(...); 

然后创建功能模型中的updateDB。

这是Joomla 2.5的一个粗略的例子,但应该与3.x一起工作。希望这可以帮助。