如何将用户帐户更改为默认值(codeigniter)?

时间:2018-01-10 06:14:21

标签: php codeigniter

我有代码CodeIgniter

我想帮助解决问题,

"我希望默认情况下将帐户设置为非活动状态" 在用户创建新帐户时处于活动状态。

<?php // status ?>
<div class="form-group col-sm-3<?php echo form_error('status') ? ' has-error' : ''; ?>">
    <?php echo form_label(lang('users input status'), '', array('class'=>'control-label')); ?>
    <span class="required">*</span>
    <div>
        <label style="font-weight:500">
            <?php echo form_radio(array('class'=>'radio', 'type'=>'radio', 'name'=>'status', 'id'=>'radio-status-1', 'value'=>'1', 'checked'=>(( ! isset($user['status']) OR (isset($user['status']) && (int)$user['status'] == 1) OR $user['id'] == 1) ? 'checked' : FALSE))); ?>
            <span><?php echo lang('admin input active'); ?></span>
        </label>
    </div>
    <?php if ( ! $user['id'] OR $user['id'] > 1) : ?>
    <div>
        <label style="font-weight:500">
            <?php echo form_radio(array('class'=>'radio', 'type'=>'radio', 'name'=>'status', 'id'=>'radio-status-2', 'value'=>'0', 'checked'=>((isset($user['status']) && (int)$user['status'] == 0) ? 'checked' : FALSE))); ?>
            <span><?php echo lang('admin input inactive'); ?></span>
        </label>
    </div>
<?php endif; ?>
</div>

1 个答案:

答案 0 :(得分:0)

让我就此给出一些解释:

如果我理解正确,您希望将每个访问者设为inactive,将(新)注册用户设为active?设置$user后哪个会生效?

我是否正确,通过阅读您的代码,<?php if ( ! $user['id'] OR $user['id'] > 1) : ?>如果该用户是用户,则该部分应显示一行代码?目前你说两件事:

如果符合以下条件,则需要显示代码行:

  1. 没有$user['id']已知
  2. 如果$ user [&#39; id&#39;]高于值1。
  3. 所以,让我们说:

    • 您的代码正在向所有用户显示(无效和有效)。

    您可以使用以下内容修复它:

    <?php if ( $user['id'] > 1) : ?>
            <div>
                <label style="font-weight:500">
                    <?php echo form_radio(array('class'=>'radio', 'type'=>'radio', 'name'=>'status', 'id'=>'radio-status-2', 'value'=>'0', 'checked'=>((isset($user['status']) && (int)$user['status'] == 0) ? 'checked' : FALSE))); ?>
                    <span><?php echo lang('admin input inactive'); ?></span>
                </label>
            </div>
        <?php endif; ?>
    

    通过删除您的OR语句,它现在只会显示给活跃用户。如果您希望向不活动的用户显示一行代码,您可以直接执行此操作:

      <?php if ( $user['id'] > 1) : ?>
        <div>
            <label style="font-weight:500">
                <?php echo form_radio(array('class'=>'radio', 'type'=>'radio', 'name'=>'status', 'id'=>'radio-status-2', 'value'=>'0', 'checked'=>((isset($user['status']) && (int)$user['status'] == 0) ? 'checked' : FALSE))); ?>
                <span><?php echo lang('admin input inactive'); ?></span>
            </label>
        </div>
    <?php else :?>
        // Code which is showing when there is NO $user['id'] known or lower than 2.
    <?php endif; ?>
    

    我希望这对你有所帮助。