request->getArguments() is empty,I'm a new user of typo3, I made a plugin to show users and use the search bar to filter them, but when I want to show my page I get this error: (1/1) #1476107295TYPO3\CMS\Core\Error \ExceptionPHPWarning:Undefinedarraykey"word"inMyPath/Controller/UserlistController.phpline44 in my controller">
I'm a new user of typo3, I made a plugin to display users and use the search bar to filter them, but when I want to display my page I get this error:
(1/1) #1476107295 TYPO3CMSCoreErrorException PHP Warning: Undefined array key "word" in MyPath/Controller/UserlistController.php line 44
In my controller I try to get the parameter to use it in my filter like this:
public function listAction(int $currentPage = 1) { $arguments = $this->request->getArguments(); $users = $this->userlistRepository->findBySearch($arguments['word'] ? $arguments['word'] : ''); somecode ... }
I tried dumping $arguments but it was empty
There is a section in my repository:
/** * @param string $word * @return object[]|TYPO3CMSExtbasePersistenceQueryResultInterface * @throws TYPO3CMSExtbasePersistenceExceptionInvalidQueryException */ public function findBySearch(string $word) { $query = $this->persistenceManager->createQueryForType(TYPO3CMSExtbaseDomainModelFrontendUser::class); $querySettings = $query->getQuerySettings(); $querySettings->setStoragePageIds([26]); $query->setQuerySettings($querySettings); $query->setOrderings([ 'lastName' => QueryInterface::ORDER_ASCENDING ]);
Does anyone know why I can't get the parameters? Thanks
If you need more parts of the code, please let me know
If you just call the List operation without sending the filter form, the parameter is empty.
You should test each expected parameter before accessing it, like this: