在我的扩展程序

时间:2017-04-29 15:21:10

标签: typo3

大家)我需要你的帮助。如何在fillow文件中更新feuser:

    <?php
    namespace Istar\Fefiles\Hooks;

    class DataHandler{

        public function processDatamap_afterDatabaseOperations(
            $status,
            $table,
            $recordUid,
            $fields,
            \TYPO3\CMS\Core\DataHandling\DataHandler $parentObject
        ) {
               here must be updating code
            }

        }

}

我需要更新一些用户字段。

可能我应该首先制作模型实例并设置字段值?然后使用userRepository?我不知道该怎么做。请帮帮我。如果您可以为我的案例键入代码,我会很高兴的。感谢您的建议! )

1 个答案:

答案 0 :(得分:2)

<?php
namespace Istar\Fefiles\Hooks;

class DataHandler{

    public function processDatamap_afterDatabaseOperations(
        $status,
        $table,
        $recordUid,
        $fields,
        \TYPO3\CMS\Core\DataHandling\DataHandler $parentObject
    ) {
        if ($table === 'fe_users') {
            $GLOBALS['TYPO3_DB']->exec_UPDATEquery(
                $table,
                'uid = ' . intval($recordUid),
                array (
                    'ANY_FIELD_FROM_FEUSER_TABLE' => 'ANY_VALUE_FOR_ANY_FIELD_FROM_FEUSER_TABLE',
                )
            );
        }
    }
}

带有ANY_FIELD_FROM_FEUSER_TABLE的数组也可以是变量$ fields,其类型为array,包含所有具有当前值的字段,您可以根据需要进行调整。