我在管理视图中添加了一个字段来上传文件。上传部分工作正常,但表单在保存时不会将文件名添加到数据库中。我在堆栈溢出上看到了类似的问题,该问题已得到解答,但他们正在使用 JRequest::setVar,该问题现已弃用:How to Save Uploaded File's Name on Database
我需要添加到“jform”数组,但是当我使用: $jinput->set('jform',array('foo' => 'bar')); 它会覆盖现有的“jform”数组,其中包含在表单中输入的其他数据:
JInput Object (
[data:protected] => Array (
[jform] => Array (
[foo] => bar
...
有人对如何添加到 jform 数组而不覆盖它有任何建议吗?
好吧,我觉得有点愚蠢 - 我已经解决了我自己的问题!
我所做的是使用:
$jinput->get('jform', NULL, NULL);
获取所有其他 jform 数据,然后使用 array_merge
添加其他数组。
然后我使用:
$jinput->post->set('jform',$mergedArray);
将数组放回到 POST 中。
希望这对某人有帮助