【问题标题】:Concrete5 5.6/7 programaticly adding user and enriching attributesConcrete5 5.6/7 以编程方式添加用户和丰富属性
【发布时间】:2015-07-05 10:41:47
【问题描述】:

丰富c5用户属性的最佳方法是什么。

我有包含用户信息的非 C5 表,此信息是在旧 cms(非 c5)上创建的,我现在用 c5 构建新站点,想知道迁移用户的最佳方法。

使用 SQL 查询是个好主意还是我应该使用 php 脚本来丰富,我已经在 c5 中创建了用户并手动添加了“锚点”的电子邮件地址以供以后丰富。

如果有人能说出或可能会引出一些例子,那将非常高兴。

【问题讨论】:

    标签: php mysql concrete5 concrete concrete5-5.7


    【解决方案1】:

    最终由我自己管理,相当简单: 我将外部用户导出到 php 数组并使用 c5 用户函数添加用户,并在丰富他们之后我的示例:

    $external_users = array({
    array('id'=>'1', 'name'='JON', 'email'=>'blank@blank.blank', 'last_name'=>'DOE', 'attr1'=>'smthing', 'attr2'=>'123'),
    array(...), ...
    });
    
    foreach($external_users as $singleUser_data){
    $email = $singleUser_data['email'];
    $ui = UserInfo::getByEmail($email);
    
        if (!is_null($ui)) {
            // Email is already in use, so let's not create the user
            return;
        }
    
        $userData['uName'] = $singleUser_data['name']." ".$singleUser_data['lastname'];
    
    //users later need to reset password
            $userData['uPassword'] = 'asd52465465456454asd';
            $userData['uPasswordConfirm'] = 'asd52465465456454asd';
    
    
         //user registererd
        $ui = UserInfo::register($userData);
    
        set_new_user_group($ui);
    enrichAtributes($ui, $singleUser_data);
            }
    
    function set_new_user_group($ui){
       // assign the new user to a group
        $g = Group::getByName('GroupName');
        $u = $ui->getUserObject();
        $u->enterGroup($g);
    }
    
    function enrichAtributes($ui, $singleUser_data){
    
    $ui->setAttribute('atr_handler1', $singleUser_data['attr1']);
        $ui->setAttribute('atr_handler2', $singleUser_data['attr2']);
    }
    

    资源: User registration programaticly and seting group

    User information documentation (setting attributes)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-20
      • 2022-07-12
      • 2021-01-30
      • 1970-01-01
      相关资源
      最近更新 更多