× Please submit new Bug Reports on GitHub: github.com/Jensen-Technologies/component-creator-issues/issues

Frontend validation - probably controller bug

7 年 9 个月 前 #1488 Dariusz
102/5000
Validation does not work on the server side.
Currently it looks like this:
		// Validate the posted data.
		$data = $model->validate($form, $data);

		// Check for errors.
		if ($data === false)
		{
	           some code here
		}

		// Attempt to save the data.
		$return = $model->save($data);

		// Check for errors.
		if ($return === false)
		{
	           some code here
		}

		// Check in the profile.
		if ($return)
		{
			$model->checkin($return);
		}

		// Clear the profile id from the session.
		$app->setUserState('com_pytania.edit.pytanie.id', null);

		// Redirect to the list screen.
		$this->setMessage(JText::_('COM_PYTANIA_ITEM_SAVED_SUCCESSFULLY'));
		$menu = JFactory::getApplication()->getMenu();
		$item = $menu->getActive();
		$url  = (empty($item->link) ? 'index.php?option=com_pytania&view=pytania' : $item->link);
		$this->setRedirect(JRoute::_($url, false));

		// Flush the data from the session.
		$app->setUserState('com_pytania.edit.pytanie.data', null);
It seems to me that it should be so:
		// Validate the posted data.
		$data = $model->validate($form, $data);

		// Check for errors.
		if ($data === false)
		{
	some code here
		} else {
            // Attempt to save the data.
            $return = $model->save($data);
        }

		// Check for errors.
		if ($return === false)
		{
	           some code here
		}

		// Check in the profile.
		if ($return)
		{
			$model->checkin($return);


		// Clear the profile id from the session.
		$app->setUserState('com_pytania.edit.pytanie.id', null);

		// Redirect to the list screen.
		$this->setMessage(JText::_('COM_PYTANIA_ITEM_SAVED_SUCCESSFULLY'));
		$menu = JFactory::getApplication()->getMenu();
		$item = $menu->getActive();
		$url  = (empty($item->link) ? 'index.php?option=com_pytania&view=pytania' : $item->link);
		$this->setRedirect(JRoute::_($url, false));

		// Flush the data from the session.
		$app->setUserState('com_pytania.edit.pytanie.data', null);
		}

Maybe I'm wrong, but after this modification, for me everything is working correctly

Please 登录注册一个帐号 to join the conversation.

创建页面时间:0.044秒
核心: Kunena 论坛

We use cookies so that you can place orders and we can provide a better service. You can control the use of cookies at the individual browser level. If you reject cookies, you may still use our website, but your ability to use some features or areas of our website may be limited.