我在“管理”视图中添加了一个字段以上载文件。上载部分工作正常,但保存时表单不会将文件名添加到数据库中。我在这里看到了一个关于堆栈溢出的类似问题,这个问题已经得到了解答,但是它们使用的是jrequest::setvar,现在已经被弃用:How to Save Uploaded File's Name on Database
我需要添加到“jform”数组,但是当我使用:$jinput->set('jform',array('foo'=>'bar');
它覆盖了包含表单中输入的其他数据的现有“jFrm”数组:

JInput Object (
    [data:protected] => Array (
        [jform] => Array (
            [foo] => bar
            ...

有人对如何添加到jform数组而不覆盖它有什么建议吗?

最佳答案

好吧,所以我觉得有点傻-我已经解决了我自己的问题!
我所做的是使用$jinput->get('jform', NULL, NULL);获取所有其他jform数据,然后使用array_merge添加其他数组。
然后我使用:$jinput->post->set('jform',$mergedArray);将数组放回post。
希望这对某人有帮助

关于database - Joomla 3.0组件-使用JInput将字段输入添加到JForm,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14145050/

10-13 02:01