php - 如何更改 Joomla 表单值?

标签 php joomla jform

我是 joomla 的新手。我一直面临一个问题,我想更改 Joomla 表单值,例如,当用户在表单字段中输入任何内容时,我想通过用户输入输入我自己的值。即,如果用户在文本字段中输入 name 并且用户输入他的名字 John,那么我想通过后端在 John 之后添加 netnock
这是 Joomla 表单

        <?xml version="1.0" encoding="utf-8"?>
    <form>
        <fieldset>
            <field
                    name="id"
                    type="hidden"
                    />
            <field
                    name="name" <!-- I want to add my values to this field -->
                    type="text"
                    label="Enter Name:"
                    description="COM_FORMMANAGER_FORMMANAGER_NAME_DESC"
                    size="40"
                    class="inputbox"
                    default=""
                    />
        </fieldset>
        <field name="types" type="list" default="" label="Select Field Types:" description="">
      <option value="text">text</option>
      <option value="email">email</option>
        <option value="password">password</option>
        <option value="textarea">textarea</option>

    </field>
    </form>


这是模型

        <?php
    /**
     * @package     Joomla.Administrator
     * @subpackage  com_formmanager
     *
     * @copyright   Copyright (C) 2005 - 2015 Open Source Matters, Inc. All rights reserved.
     * @license     GNU General Public License version 2 or later; see LICENSE.txt
     */

    // No direct access to this file
    defined('_JEXEC') or die('Restricted access');

    /**
     * FormManager Model
     *
     * @since  0.0.1
     */
    class FormManagerModelFormManager extends JModelAdmin
    {
        /**
         * Method to get a table object, load it if necessary.
         *
         * @param   string  $type    The table name. Optional.
         * @param   string  $prefix  The class prefix. Optional.
         * @param   array   $config  Configuration array for model. Optional.
         *
         * @return  JTable  A JTable object
         *
         * @since   1.6
         */
        public function getTable($type = 'FormManager', $prefix = 'FormManagerTable', $config = array())
        {
            return JTable::getInstance($type, $prefix, $config);
        }

        /**
         * Method to get the record form.
         *
         * @param   array    $data      Data for the form.
         * @param   boolean  $loadData  True if the form is to load its own data (default case), false if not.
         *
         * @return  mixed    A JForm object on success, false on failure
         *
         * @since   1.6
         */
        public function getForm($data = array(), $loadData = true)
        {
            // Get the form.
            $form = $this->loadForm(
                'com_formmanager.formmanager',
                'formmanager',
                array(
                    'control' => 'jform',
                    'load_data' => $loadData
                )
            );

            if (empty($form))
            {
                return false;
            }

            return $form;
        }

        /**
         * Method to get the data that should be injected in the form.
         *
         * @return  mixed  The data for the form.
         *
         * @since   1.6
         */
        protected function loadFormData()
        {
            // Check the session for previously entered form data.
            $data = JFactory::getApplication()->getUserState(
                'com_formmanager.edit.formmanager.data',
                array()
            );

            if (empty($data))
            {
                $data = $this->getItem();
            }

            return $data;
        }
    }

最佳答案

假设您在组件中遵循 joomla 指南和架构,您可以在模型 save() 或 prepareTable() 函数中,或在表 check() 或 store() 函数中执行。

例如

public function save($data)
{
   $data['name'] .= ' Bond, my name is Bond';

   return parent::save($data);
}

关于php - 如何更改 Joomla 表单值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51170617/

相关文章:

php - 如何获取下载链接的 URL

php - 如何在循环中 $_POST

javascript - PHP 检查变量是否已设置

java - 有没有什么方法可以在不使用 Cancel jButton 退出整个应用程序的情况下关闭 JFrame?

PHP 表单仅将图像发送到 MYSQL 数据库,没有其他值

php - 我的 PHP 页面上的 SQL 中的 Find 方法找到所有内容,即使记录为空

joomla - 将 Joomla 1.7 站点移动到新服务器。管理员工作正常。无页面显示

linux - joomla目录权限问题

java - 我的 HashMap 仅放置空值