编程语言
首页 > 编程语言> > php – Joomla:将变量传递给getInput()

php – Joomla:将变量传递给getInput()

作者:互联网

我正在构建一个后端组件(1.6 / 1.7 / 2.5),我需要将另一个视图中的变量传递给新记录中的字段.变量传递工作正常.

我的问题是使用getInput().

从不同的doc页面开始,有不同的数量和参数格式 – 令人困惑!例如:

http://docs.joomla.org/API16:JForm/getInput:getInput($name,$group =’_ default’,$formControl =’_ default’,$groupControl =’_ default’,$value = null)

VS

http://docs.joomla.org/JForm::getInput/1.6

public function getInput (
    $name 
    $group=null 
    $value=null
)

问题:

我只需要将变量作为默认值传递,例如:

echo $this-> form-> getInput(‘id’,$value = $this-> userID);?>

上面的代码使输入字段消失.如果我取出$value = $this-> userID,输入字段会显示,但显然没有任何默认值.我也尝试过:

$value=$this->userID;
echo $this->form->getInput('id', $value );

同样的问题,输入字段消失了.我尝试了一些其他的变化,但基本上如果我尝试在getInput()中放置任何其他东西它不起作用,我也找不到任何关于如何使用这些其他参数的好工作示例.

我究竟做错了什么?

谢谢!

解决方法:

根据the source,这是正确的API:

getInput($name, $group = null, $value = null)

并且getInput()只调用getField():

getField($name, $group = null, $value = null)

这意味着您应该这样做以设置默认值:

echo $this->form->getInput('id', null, $this->userID ); // Returns the $field->input String

要么:

$field = $this->form->getField('id', null, $this->userID ); // Returns the JFormField object

标签:joomla2-5,php,joomla,joomla1-7,joomla1-6
来源: https://codeday.me/bug/20190823/1696306.html