基于Ion Auth库在CodeIgniter中创建登录表单

基于Ion Auth库在CodeIgniter中创建登录表单,codeigniter,ion-auth,Codeigniter,Ion Auth,我还在学习如何使用CodeIgniter 我想在我的codeigniter应用程序中基于创建一个登录表单 我已经按照说明安装了库,当导航到auth/login、auth/create\u user、auth/logout等时,它可以正常工作 然而,我不需要一个独立的页面来登录,我想把表单嵌入我的主页。当我在我的主页中使用提供的示例登录视图时,出现以下错误: 消息:未定义变量:消息 消息:未定义变量:标识 消息:未定义变量:密码 我意识到上面的变量没有在我的视图中定义,我只是不知道应该在哪里以

我还在学习如何使用CodeIgniter

我想在我的codeigniter应用程序中基于创建一个登录表单

我已经按照说明安装了库,当导航到auth/login、auth/create\u user、auth/logout等时,它可以正常工作

然而,我不需要一个独立的页面来登录,我想把表单嵌入我的主页。当我在我的主页中使用提供的示例登录视图时,出现以下错误:

  • 消息:未定义变量:消息
  • 消息:未定义变量:标识
  • 消息:未定义变量:密码

我意识到上面的变量没有在我的视图中定义,我只是不知道应该在哪里以及如何定义它们,为什么它们在随库提供的示例中工作得很好?

是否在与要嵌入登录表单的视图相关的控制器中加载所需的适当库,例如“表单验证”如果您使用表单输入($message),例如。。。无论如何,您可以通过检查$var是否已设置来避免这种情况。

config/routes.php

$route['login/check'] = 'auth/my_front_end_login';
查看

<?php echo form_open('login/check'); ?>

<fieldset>
    <legend>login Credentials<legend>

    <label for="identity">&lowast; Identity</label>
    <input type="text" name="identity" id="identity" value="<?php echo set_value('identity');?>" />
    <?php echo form_error('identity');?>

    <label for="password">&lowast; Password</label>
    <input type="password" name="password" id="password" value="<?php echo set_value('password');?>" />
    <?php echo form_error('password');?>

    <label for="message">&lowast; Message</label>
    <input type="text" name="message" id="message" value="<?php echo set_value('message');?>" />
    <?php echo form_error('message');?>
</fieldset>

<?php echo form_close();?>

登录凭证
&低糖;身份

表单验证加载到我的构造函数中。我可以使用isset来避免这些错误,我只是好奇为什么表单在提供的示例视图中工作得很好,但在我自己的视图中却不工作。谢谢,这很有效。但是,我仍然不知道为什么示例视图不抱怨这些变量,而我的视图却抱怨。经过进一步的调查,看起来ci_vars(保存这些变量:message、identity,…)加载到示例视图中,但不是我的视图。再次感谢您的时间。正如我所说,我不熟悉ION_Auth,但问题可能在于表单验证失败的方向,在上面的例子中,我只调用$this->index()方法。因此,set_value()变量在该范围内可用。ie:主页
public function my_front_end_login(){
   if($this->form_validation->run('login_frontend')) // uses config/form_validation.php
   {
       //validation passed, now attempt login via ION_AUTH
       //open ION_Auth library file and see what the login method requests in its params. 
      if(ION_Auth::login($params)) // Im not familiar with it
      {
         //login success
      }
      else
      {
         //login failure
      }
   }
   else
   {
       $this->index();
   }
}
<?php echo form_open('login/check'); ?>

<fieldset>
    <legend>login Credentials<legend>

    <label for="identity">&lowast; Identity</label>
    <input type="text" name="identity" id="identity" value="<?php echo set_value('identity');?>" />
    <?php echo form_error('identity');?>

    <label for="password">&lowast; Password</label>
    <input type="password" name="password" id="password" value="<?php echo set_value('password');?>" />
    <?php echo form_error('password');?>

    <label for="message">&lowast; Message</label>
    <input type="text" name="message" id="message" value="<?php echo set_value('message');?>" />
    <?php echo form_error('message');?>
</fieldset>

<?php echo form_close();?>