Solved MySQL error if more than 72 forums selected

sm1le

Licensed
Licensed
Required Custom Fields On Forums
Joined
Aug 23, 2022
Messages
2
Reaction score
1
XF\Db\Exception: MySQL query error [1406]: Data too long for column 'xs_rcfof_forum_list' at row 1 in src/XF/Db/AbstractStatement.php at line 228
  1. XF\Db\AbstractStatement->getException() in src/XF/Db/Mysqli/Statement.php at line 196
  2. XF\Db\Mysqli\Statement->getException() in src/XF/Db/Mysqli/Statement.php at line 77
  3. XF\Db\Mysqli\Statement->execute() in src/XF/Db/AbstractAdapter.php at line 94
  4. XF\Db\AbstractAdapter->query() in src/XF/Db/AbstractAdapter.php at line 322
  5. XF\Db\AbstractAdapter->update() in src/XF/Mvc/Entity/Entity.php at line 1515
  6. XF\Mvc\Entity\Entity->_saveToSource() in src/XF/Mvc/Entity/Entity.php at line 1242
  7. XF\Mvc\Entity\Entity->save() in src/XF/Mvc/FormAction.php at line 69
  8. XF\Mvc\FormAction->XF\Mvc\{closure}() in src/XF/Mvc/FormAction.php at line 187
  9. XF\Mvc\FormAction->run() in src/XF/Admin/Controller/AbstractField.php at line 191
  10. XF\Admin\Controller\AbstractField->actionSave() in src/XF/Mvc/Dispatcher.php at line 350
  11. XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 257
  12. XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 113
  13. XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 55
  14. XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2326
  15. XF\App->run() in src/XF.php at line 488
  16. XF::runApp() in admin.php at line 13



UPDATE `xf_user_field` SET `xs_rcfof_forum_list` = ?, `xs_rcfof_user_group` = ? WHERE `field_id` = 'secretquestion'
------------

#0 src/XF/Db/Mysqli/Statement.php(196): XF\Db\AbstractStatement->getException('MySQL query err...', 1406, '22001')
#1 src/XF/Db/Mysqli/Statement.php(77): XF\Db\Mysqli\Statement->getException('MySQL query err...', 1406, '22001')
#2 src/XF/Db/AbstractAdapter.php(94): XF\Db\Mysqli\Statement->execute()
#3 src/XF/Db/AbstractAdapter.php(322): XF\Db\AbstractAdapter->query('UPDATE `xf_use...', Array)
#4 src/XF/Mvc/Entity/Entity.php(1515): XF\Db\AbstractAdapter->update('xf_user_field', Array, '`field_id` = 's...')
#5 src/XF/Mvc/Entity/Entity.php(1242): XF\Mvc\Entity\Entity->_saveToSource()
#6 src/XF/Mvc/FormAction.php(69): XF\Mvc\Entity\Entity->save(true, false)
#7 src/XF/Mvc/FormAction.php(187): XF\Mvc\FormAction->XF\Mvc\{closure}(Object(XF\Mvc\FormAction))
#8 src/XF/Admin/Controller/AbstractField.php(191): XF\Mvc\FormAction->run()
#9 src/XF/Mvc/Dispatcher.php(350): XF\Admin\Controller\AbstractField->actionSave(Object(XF\Mvc\ParameterBag))
#10 src/XF/Mvc/Dispatcher.php(257): XF\Mvc\Dispatcher->dispatchClass('XF:UserField', 'Save', Object(XF\Mvc\RouteMatch), Object(XenSoluce\RequiredCustomForum\XF\Admin\Controller\UserField), NULL)
#11 src/XF/Mvc/Dispatcher.php(113): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(XenSoluce\RequiredCustomForum\XF\Admin\Controller\UserField), NULL)
#12 src/XF/Mvc/Dispatcher.php(55): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#13 src/XF/App.php(2326): XF\Mvc\Dispatcher->run()
#14 src/XF.php(488): XF\App->run()
#15 admin.php(13): XF::runApp('XF\\Admin\\App')
#16 {main}

the maximum possible number of selected forums is 72, after that I get this error
I have over 100 forums and I want to select all of them so that users can't see any of them until the required fields are filled in.

If possible, can you add an option that once the user is logged in, will not allow access to the home page without filling in the required fields.
 
Hello, this is fixed in the 2.2.2 Fix 1 version ! ;)

Regards, SyTry
 
Solution
Top Bottom