gpt4 book ai didi

php - Joomla:在自定义 View 中保存表单时出错

转载 作者:可可西里 更新时间:2023-11-01 01:03:56 26 4
gpt4 key购买 nike

我创建了一个带有表单的自定义组件来更新要在前端显示的四种产品的价格。

我的主 Controller 代码在这里:

public function display($cachable = false, $urlparams = false) {

require_once JPATH_COMPONENT.'/helpers/calculator.php';

$view = JFactory::getApplication()->input->getCmd('view', 'pricetable');
$layout = JFactory::getApplication()->input->getCmd('layout', 'edit');

JFactory::getApplication()->input->set( 'layout', $layout );
JFactory::getApplication()->input->set('view', $view);
JFactory::getApplication()->input->set('id', 1);

parent::display($cachable, $urlparams);
return $this;
}

id 设置为 1,因此它仅从数据库加载第一行。

价格表容器的代码是:

function __construct() {
$this->view_list = 'pricetable';
parent::__construct();
}

现在在后台管理中,表单会根据需要加载第一行数据。当我尝试保存表单时,它被重定向到 administrator/index.php?option=com_calculator&view=pricetable 并且错误是:

Error: You are not permitted to use that link to directly access that page (#1).

我的表单操作是:

<?php echo JRoute::_('index.php?option=com_calculator&task=pricetable.edit&id='.(int) $this->item->id); ?>

请指出我哪里做错了。这是我挠头的第三天。 :(

最佳答案

您可以随时在代码中执行更新操作(或调用它们)。新实例或更新新实例 - 只需再添加一个 if在代码和hidden在表格上输入。例如:

<input type="hidden" name="task" value="update" />

关于php - Joomla:在自定义 View 中保存表单时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15829776/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com