0

嗨,我是 Codeigniter 的新手,但遇到了障碍。

我正在尝试查看用户是否已经存在。

首先,我通过表单将数据上传到控制器,该控制器进行验证等,但仅解决该问题。我设法找到它坏的地方,但不能从那里修复它。

在这之前,它会查询数据库,发现实际上有一个匹配的用户名,然后到达下面的代码片段

      $errors = $this->tank_auth->get_error_message(); 
      //find the correct error msg

      foreach ($errors as $k => $v) $data['errors'][$k] =$this->lang->line($v);        
      //loop and find etc

      $temp_mess = $data['errors'][$k]; 
      //stores relevant stuff in the string
    }
  }
//echo $temp_mess; it outputs to the html so i can see it "says user exists"
$data['temp_mess'] = $tempmess; /// put this into a array

$this->load->view('layout', $data); ///send 
    }
}

现在对于视图,它然后调用布局视图等,但可惜没有输出

$username1 = array(
        'name'  => 'username1',
        'id'    => 'username1',
        'value' => set_value('username1'),
        'maxlength' => $this->config->item('username_max_length', 'tank_auth'),
        'size'  => 30,
    );

<?php echo form_open('register', $form_reg_id ); ?>

<fieldset>
<legend align="center">Sign up</legend>
    <?php echo form_label('Username', $username1['id']); ?>
    <?php echo form_input($username1); ?>
    <?php $tempmess; ?>
    <div class="error"><?php echo form_error($username1['name']); ?>
    <?php echo isset($errors[$username1['name']])?$errors[$username1['name']]:''; ?>
<?php echo form_close(); ?>
</fieldset>

感谢您对此的任何帮助

也有人可以解释一下这条线。(对于一个非常愚蠢的人)

<?php echo isset($errors[$username1['name']])?$errors[$username1['name']]:''; ?>
4

1 回答 1

0

当用户名存在时,Tank_auth 会自动返回错误。Juste 必须检查错误数组。

于 2012-11-08T02:05:17.030 回答