1

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

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

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

4

1 回答 1

4

什么版本的Joomla?假设您不使用 AJAX,然后直接连接到您的控制器。

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

然后,您的控制器(controller.php)中将有一个名为 myoperation 的函数,它将处理表单中的所有内容(当然不要忘记令牌)

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。希望这可以帮助。

于 2013-07-24T02:57:16.060 回答