HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.
Please upgrade here. These earlier versions are no longer being updated and have security issues.

2.3.1 - Flagging plugin breaks Admin CP

So I recently installed Vanilla 2.3.1, installed a custom theme, and enabled a few plugins. One important plugin I'd like on the forums is Flagging, which for some odd reason, makes it impossible to use the Admin CP, so I disabled it through the config files. While it does break the Admin CP, the forums continue to work just fine.

Is there any quick fixes I can do to allow this plugin to be enabled and be able to use the Admin CP at the same time? If not, this thread will serve as a bug report.

Comments

  • R_JR_J Ex-Fanboy Munich Admin

    Please tell us what "break Admin CP" means in detail: blank page, error message etc.

    A blank page might be a signal for a PHP error. Check server error logs or (not if on production server!) change "show errors" to 1 in /index.php
    The "Something went wrong" page will give you more detailed information when you add $Configuration['Debug'] = TRUE; to the /conf/config.php

    There are some themes which try to replace views and do it all wrong. It's always worth trying if the error persists while using the default theme.

  • Yes it was the something went wrong page, as you can see:

    I'll try what you said and debug the situation, I'll edit the post if I can't handle it myself.

  • So I looked into it and I'm guessing it's something wrong with my database, and I have no idea how I should fix this issue in phpMyAdmin:

    Fatal Error in PHP.trigger_error();

    Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'databasenamehere.fl.ForeignID' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
    The error occurred on or near: C:\wamp64\www\bb\library\database\class.database.php
    408: // If we get here then the pdo statement prepared properly.
    409: break;
    410:
    411: } catch (Gdn_UserException $uex) {
    412: trigger_error($uex->getMessage(), E_USER_ERROR);
    413: } catch (Exception $ex) {
    414: list($state, $code, $message) = $PDO->errorInfo();
    415:
    416: // If the error code is consistent with a disconnect, attempt to retry
    Backtrace:
    C:\wamp64\www\bb\library\database\class.database.phpPHP::Gdn_ErrorHandler();
    [C:\wamp64\www\bb\library\database\class.database.php:412] PHP::trigger_error();
    [C:\wamp64\www\bb\library\database\class.sqldriver.php:1663] Gdn_Database->query();
    [C:\wamp64\www\bb\library\database\class.sqldriver.php:614] Gdn_SQLDriver->query();
    [C:\wamp64\www\bb\plugins\Flagging\class.flagging.plugin.php:34] Gdn_SQLDriver->get();
    [C:\wamp64\www\bb\library\core\class.pluginmanager.php:873] FlaggingPlugin->base_getAppSettingsMenuItems_handler();
    [C:\wamp64\www\bb\library\core\class.pluginmanager.php:786] Gdn_PluginManager->callEventHandler();
    [C:\wamp64\www\bb\library\core\class.pluggable.php:133] Gdn_PluginManager->callEventHandlers();
    [C:\wamp64\www\bb\applications\dashboard\modules\class.sidemenumodule.php:268] Gdn_Pluggable->fireEvent();
    [C:\wamp64\www\bb\library\core\class.module.php:240] SideMenuModule->toString();
    [C:\wamp64\www\bb\library\core\class.controller.php:1364] Gdn_Module->render();
    [C:\wamp64\www\bb\applications\dashboard\views\admin.master.php:34] Gdn_Controller->renderAsset();
    [C:\wamp64\www\bb\library\core\class.controller.php:1853] PHP::include();
    [C:\wamp64\www\bb\library\core\class.controller.php:1314] Gdn_Controller->renderMaster();
    [C:\wamp64\www\bb\library\core\class.pluggable.php:199] Gdn_Controller->xRender();
    [C:\wamp64\www\bb\applications\dashboard\controllers\class.settingscontroller.php:1162] Gdn_Pluggable->__call();
    [C:\wamp64\www\bb\applications\dashboard\controllers\class.settingscontroller.php:1162] SettingsController->render();
    [C:\wamp64\www\bb\applications\dashboard\controllers\class.settingscontroller.php:1162] SettingsController->plugins();
    [C:\wamp64\www\bb\library\core\class.dispatcher.php:326] PHP::call_user_func_array();
    [C:\wamp64\www\bb\index.php:44] Gdn_Dispatcher->dispatch();
    Variables in local scope:
    [Sql] 'select DISTINCT(fl.ForeignID) as NumFlaggedItems
    from GDN_Flag fl
    group by ForeignURL'
    [InputParameters] array (
    )
    [Options] array (
    'Type' => 'select',
    'Slave' => NULL,
    'ReturnType' => 'DataSet',
    )
    [ReturnType] 'DataSet'
    [tries] 2
    [try] 0
    [PDO] array (
    )
    [PDOStatement] false
    [state] '42000'
    [code] 1055
    [message] 'Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column \'databasenamehere.fl.ForeignID\' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by'
    [uex] array (
    'xdebug_message' => '

    ( ! ) Gdn_UserException: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column \'databasenamehere.fl.ForeignID\' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by in C:\wamp64\www\bb\library\database\class.database.php on line 404
    Call Stack
    #TimeMemoryFunctionLocation
    10.0024248920{main}( )...\index.php:0
    20.270110016584Gdn_Dispatcher->dispatch( )...\index.php:44
    30.302912401184call_user_func_array:{C:\wamp64\www\bb\library\core\class.dispatcher.php:326}
    ( )...\class.dispatcher.php:326
    40.302912402368SettingsController->plugins( )...\class.dispatcher.php:326
    50.311412559128render
    ( )...\class.settingscontroller.php:1162
    60.311412559800Gdn_Pluggable->__call( )...\class.settingscontroller.php:1162
    70.351013518184Gdn_Controller->xRender( )...\class.pluggable.php:199
    80.633914351456Gdn_Controller->renderMaster( )...\class.controller.php:1314
    90.661214423448include( \'C:\wamp64\www\bb\applications\dashboard\views\admin.master.php\' )...\class.controller.php:1853
    100.676714431944Gdn_Controller->renderAsset( )...\admin.master.php:34
    110.677314431896Gdn_Module->render( )...\class.controller.php:1364
    120.677314432320SideMenuModule->toString( )...\class.module.php:240
    130.677314432544Gdn_Pluggable->fireEvent( )...\class.sidemenumodule.php:268
    140.677314432592Gdn_PluginManager->callEventHandlers( )...\class.pluggable.php:133
    150.677414432928Gdn_PluginManager->callEventHandler( )...\class.pluginmanager.php:786
    160.684514499664FlaggingPlugin->base_getAppSettingsMenuItems_handler( )...\class.pluginmanager.php:873
    170.684914501160Gdn_SQLDriver->get( )...\class.flagging.plugin.php:34
    180.685114501648Gdn_SQLDriver->query( )...\class.sqldriver.php:614
    190.685114502336Gdn_Database->query( )...\class.sqldriver.php:1663
    ',
    )
  • R_JR_J Ex-Fanboy Munich Admin

    The technical answer is that you have to disable then "ONLY_FULL_GROUP_BY" model of your database: https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_only_full_group_by

    That could be done by running the query SET sql_mode = ''; but after the database server is restarted, I guess you would face the same error again.

    Additionally you should change that in the mysql.ini. You might have to ask your hosting provider.

    hgtonightMayhem
  • I did what you said but it didn't work, however what you said was pretty much right. PhpMyAdmin had been setting it by default, and once I figured that out, it works like a charm. Thanks for all of the help!

Sign In or Register to comment.