的Joomla模块开发与形式 - 如何处理(joomla module development wi

2019-08-17 04:06发布

我创建一个简单的Joomla 2.5模块,将有一个HTML表单。

mod_mymodule/tmpl/default.php

<form method="post" id="myemailform" action="">
    <label for="ReferralName">Enter Name:</label><input type="text" name="name" value="<?php echo modCamcloudReferralHelper::getReferralName(); ?>">
    <label for="ReferralEmail">Enter Email Address:</label><input type="text" name="email">
    <label for="ReferralMessage">Enter Message (optional):</label><textarea class="message"></textarea>
    <span class="countdown"></span>
    <button type="submit" value="Send Email">Send Email</button>
    <?php echo JHtml::_('form.token'); ?>   
</form>

我有在辅助类:

mod_mymodule/helper.php -这只是有一些实用的功能在里面。

我的问题是什么是通常的惯例这里来处理我在服务器端的形式。 我试图找到什么人都做的例子,但我似乎无法找到任何东西。 难道我只是把助手类的一切:

<form method="post" id="myemailform" action="..\helper.php">

或类似的东西? 提前致谢。

Answer 1:

是的,你应该做模块的辅助类的形式处理。 保留所有的逻辑出了模板文件,并且可以使用mod_mymodule.php调用辅助方法和包括视图文件之前分配变量。

不要设置为形式的动作助手文件! 我觉得你的情况的动作应该是相同的页面,所以你也可以ommit操作URL。

编辑:正如意见中的要求,这将是您的内容mod_mymodule.php

// include helper file
require_once dirname(__FILE__).'/helper.php';
// call some method of the helper class
$items = modMymoduleHelper::getItems();

$moduleclass_sfx = htmlspecialchars($params->get('moduleclass_sfx'));
// render view file from mod_mymodule/tmpl/default.php, $items is available in the view file
require JModuleHelper::getLayoutPath('mod_mymodule', $params->get('layout', 'default'));


文章来源: joomla module development with form - how to process