Codeigniter注册登录代码示例

 更新时间:2014年06月12日 15:06:45   投稿:shichen2014  
本示例Codeigniter注册登录代码源自一个codeigniter的项目,现分享下,需要的朋友可以参考下

本示例Codeigniter注册登录代码源自一个codeigniter的项目,现分享下~

由于使用了 Active Record 类,一般数据库操作只有两层,即是C和V

controllers/login.php文件:

复制代码 代码如下:
<?php
class Login extends CI_Controller {
 private $pass = '';
 public function __construct() {
  parent::__construct ();
  $this->load->helper ( array (
    'form',
    'url'
  ) );
  $this->load->library('session');
 }
 public function index() {
  $this->load->view ( 'login' );
 }
 public function formsubmit() {
  $this->load->library ( 'form_validation' );

  $this->form_validation->set_rules ( 'username', 'Username', 'required' );
  $this->form_validation->set_rules ( 'password', 'Password', 'required' );
  if ($this->form_validation->run () == FALSE) {
   $this->load->view ( 'login' );
  } else {
   if (isset ( $_POST ['submit'] ) && ! empty ( $_POST ['submit'] )) {
    $data = array (
      'user' => $_POST ['username'],
      'pass' => md5($_POST ['password'])
    );
    $newdata = array(
      'username'  =>  $data ['user'] ,
      'userip'     => $_SERVER['REMOTE_ADDR'],
      'luptime'   =>time()
    );
    if ($_POST ['submit'] == 'login') {
     $query = $this->db->get_where ( 'uc_user', array (
       'user' => $data ['user']
     ), 1, 0 );

     foreach ( $query->result () as $row ) {
      $pass = $row->pass;
     }
     if ($pass == $data ['pass']) {

      $this->session->set_userdata($newdata);
      $this->load->view ( 'usercenter', $data );
     }
    } else if ($_POST ['submit'] == 'register') {

     $this->session->set_userdata($newdata);
     $this->db->insert ( 'uc_user', $data );
     $this->load->view ( 'usercenter', $data );
    } else {
     $this->session->sess_destroy();
     $this->load->view ( 'login' );
    }
   }
  }
 }
}

views/login.php文件:

复制代码 代码如下:
<html>
<?php echo validation_errors(); ?>
<?php echo form_open('login/formsubmit'); ?>
<table>
<tr>
<td>用户名</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>密码</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td>
<input type="submit" name="submit" value="login">
</td>
<td>
<input type="submit" name="submit" value="register">
</td>
</tr>
</table>
</form>
</html>

sql语句:

uc_user:

复制代码 代码如下:
  CREATE TABLE `uc_user` (                                  
           `id` int(11) unsigned zerofill NOT NULL AUTO_INCREMENT, 
           `user` varchar(20) NOT NULL,                            
           `pass` char(32) NOT NULL,                               
           `role` enum('root','normal') NOT NULL DEFAULT 'root',   
           `del` decimal(1,0) NOT NULL DEFAULT '0',                
           PRIMARY KEY (`id`)                                      
         ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 

相关文章

  • 使用PHP similar text计算两个字符串相似度

    使用PHP similar text计算两个字符串相似度

    在网站开发中,我们经常使用php similar text 计算两个字符串相似度。本文涉及到similar text函数语法、用法详解,感兴趣的朋友一起学习吧
    2015-11-11
  • Laravel源码解析之路由的使用和示例详解

    Laravel源码解析之路由的使用和示例详解

    这篇文章主要介绍了Laravel源码解析之路由的使用和示例详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • PHP实现获取FLV文件的时间

    PHP实现获取FLV文件的时间

    这篇文章主要介绍了PHP实现获取FLV文件的时间,本文直接给出实现代码和使用方法,需要的朋友可以参考下
    2015-02-02
  • php 生成Tab键或逗号分隔的CSV

    php 生成Tab键或逗号分隔的CSV

    这篇文章主要介绍了php 生成Tab键或逗号分隔的CSV的相关资料,代码简单易懂,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • 跟我学Laravel之安装Laravel

    跟我学Laravel之安装Laravel

    本文主要介绍了安装Laravel框架的几种方法,以及Laravel框架的服务器环境要求及相关配置,非常实用,有需要的朋友可以参考下
    2014-10-10
  • thinkphp普通查询与表达式查询实例分析

    thinkphp普通查询与表达式查询实例分析

    这篇文章主要介绍了thinkphp普通查询与表达式查询,以实例形式较为详细的分析了thinkphp中的普通查询与表达式查询具体用法,包含普通查询的字符串方式与数组方式以及表达式查询中的各种常用技巧,非常具有实用价值,需要的朋友可以参考下
    2014-11-11
  • php curl请求接口并获取数据的示例代码

    php curl请求接口并获取数据的示例代码

    本篇文章主要介绍了php curl请求接口并获取数据的示例代码,非常具有实用价值,需要的朋友可以参考下
    2017-08-08
  • php数组转换js数组操作及json_encode的用法详解

    php数组转换js数组操作及json_encode的用法详解

    php数组转换js数组操作及json_encode的用法。需要的朋友可以过来参考下,希望对大家有所帮助
    2013-10-10
  • php实现爬取和分析知乎用户数据

    php实现爬取和分析知乎用户数据

    本文给大家介绍的是利用php的curl编写的爬取知乎用户数据的爬虫,并分析用户的各种属性,有需要的小伙伴可以参考下
    2016-01-01
  • Laravel学习基础之migrate的使用教程

    Laravel学习基础之migrate的使用教程

    这篇文章主要给大家介绍了关于Laravel学习基础之migrate使用的相关资料,文中通过示例代码介绍非常详细,分别介绍了生成迁移、迁移结构、运行迁移和回滚迁移等实现的方法,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-10-10

最新评论