Cronjob "AssignTrophiesCronjob" bringt Fehler

  • Ich habe soeben alle meine Cronjobs immer nacheinander ausgeführt und dabei warf der Cronjob AssignTrophiesCronjob den folgenden Fehler.

    Requested URL
    /acp/index.php?ajax-proxy/&t=f0c20f4e0210ec3f99981aa4d4f9549b1710a325
    Referrer
    https://www.compiware-forum.de/acp/index.php?cronjob-list/&pageNo=3&sortField=cronjobID&sortOrder=ASC
    Error Message
    Could not prepare statement 'SELECT user_table.userID AS objectID FROM wcf1_user user_table WHERE user_table.userID NOT IN (SELECT userID FROM wcf1_user_to_group WHERE groupID IN (?)) AND user_table.activationCode = ? AND user_table.userID NOT IN (SELECT userID FROM wcf1_user_trophy WHERE trophyID IN (?)) AND user_option_value.userOption4 = ? AND user_table.userID NOT IN (SELECT userID FROM wcf1_user_trophy WHERE trophyID IN (?)) '
    Type
    wcf\system\database\exception\DatabaseQueryException
    File (Line)
    /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/database/Database.class.php (248)
    Stacktrace
    1. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/data/DatabaseObjectList.class.php (164): wcf\system\database\Database->prepareStatement(…)
    2. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/trophy/condition/TrophyConditionHandler.class.php (104): wcf\data\DatabaseObjectList->readObjectIDs(…)
    3. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/trophy/condition/TrophyConditionHandler.class.php (72): wcf\system\trophy\condition\TrophyConditionHandler->getUserIDs(…)
    4. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/cronjob/AssignTrophiesCronjob.class.php (23): wcf\system\trophy\condition\TrophyConditionHandler->assignTrophies(…)
    5. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/data/cronjob/CronjobAction.class.php (147): wcf\system\cronjob\AssignTrophiesCronjob->execute(…)
    6. [internal function] (?): wcf\data\cronjob\CronjobAction->execute(…)
    7. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/data/AbstractDatabaseObjectAction.class.php (204): call_user_func(…)
    8. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/action/AJAXProxyAction.class.php (75): wcf\data\AbstractDatabaseObjectAction->executeAction(…)
    9. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/action/AJAXInvokeAction.class.php (104): wcf\action\AJAXProxyAction->invoke(…)
    10. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/action/AbstractAction.class.php (47): wcf\action\AJAXInvokeAction->execute(…)
    11. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/action/AJAXInvokeAction.class.php (63): wcf\action\AbstractAction->__run(…)
    12. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/request/Request.class.php (83): wcf\action\AJAXInvokeAction->__run(…)
    13. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/request/RequestHandler.class.php (96): wcf\system\request\Request->execute(…)
    14. /var/www/compiware-forum.de/htdocs/compiware-forum.de/acp/index.php (9): wcf\system\request\RequestHandler->handle(…)
    Error Message
    SQLSTATE[42S22]: Column not found: 1054 Unknown column 'user_option_value.userOption4' in 'where clause'
    Type
    PDOException
    File (Line)
    /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/database/Database.class.php (243)
    Stacktrace
    1. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/database/Database.class.php (243): PDO->prepare(…)
    2. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/data/DatabaseObjectList.class.php (164): wcf\system\database\Database->prepareStatement(…)
    3. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/trophy/condition/TrophyConditionHandler.class.php (104): wcf\data\DatabaseObjectList->readObjectIDs(…)
    4. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/trophy/condition/TrophyConditionHandler.class.php (72): wcf\system\trophy\condition\TrophyConditionHandler->getUserIDs(…)
    5. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/cronjob/AssignTrophiesCronjob.class.php (23): wcf\system\trophy\condition\TrophyConditionHandler->assignTrophies(…)
    6. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/data/cronjob/CronjobAction.class.php (147): wcf\system\cronjob\AssignTrophiesCronjob->execute(…)
    7. [internal function] (?): wcf\data\cronjob\CronjobAction->execute(…)
    8. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/data/AbstractDatabaseObjectAction.class.php (204): call_user_func(…)
    9. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/action/AJAXProxyAction.class.php (75): wcf\data\AbstractDatabaseObjectAction->executeAction(…)
    10. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/action/AJAXInvokeAction.class.php (104): wcf\action\AJAXProxyAction->invoke(…)
    11. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/action/AbstractAction.class.php (47): wcf\action\AJAXInvokeAction->execute(…)
    12. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/action/AJAXInvokeAction.class.php (63): wcf\action\AbstractAction->__run(…)
    13. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/request/Request.class.php (83): wcf\action\AJAXInvokeAction->__run(…)
    14. /var/www/compiware-forum.de/htdocs/compiware-forum.de/lib/system/request/RequestHandler.class.php (96): wcf\system\request\Request->execute(…)
    15. /var/www/compiware-forum.de/htdocs/compiware-forum.de/acp/index.php (9): wcf\system\request\RequestHandler->handle(…)

    Was genau möchte mir der Fehler sagen und was ist die Ursache?

  • Ich lese das so... Du hast eine "automatische Trophäenzuordnung" definiert, die von einem UserOption4-Feld abhängig ist, dieses Feld gibt es aber nicht (mehr). Column not found: 1054 Unknown column 'user_option_value.userOption4'

  • Das Feld gibt es.



    Aber ich kann nicht erkennen, was es genau ist. Wenn Option4 gleichzusetzen ist mit der ID, dann wäre das bei mir das Geschlecht. Und ich nutze 2 Trophäen, die vergeben werden, wenn jemand männlich oder weiblich ist. Habe mir die Trophäen angeschaut und konnte keine Fehler feststellen... :/


    Joshua Rüsweg

    Danke! :)

  • SQL
    SELECT user_table.userID AS objectID
    FROM wcf1_user user_table
    WHERE user_table.userID NOT IN (SELECT userID FROM wcf1_user_to_group WHERE groupID IN (?)) 
    AND user_table.activationCode = ? AND user_table.userID NOT IN (SELECT userID FROM wcf1_user_trophy WHERE trophyID IN (?)) AND user_option_value.userOption4 = ? AND user_table.userID NOT IN (SELECT userID FROM wcf1_user_trophy WHERE trophyID IN (?));

    Naja, in dem Statement da oben gibt es aber NICHT... weil im FROM keine Tabelle wcf1_user_option_value angesprochen wird, folglich kann das Statement das Feld nicht finden...

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!