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 は自動的にエラーを返します。エラー配列を確認する必要があります。

于 2012-11-08T02:05:17.030 に答える