简单易懂的codeigniter数据库基本操作

现在开始,首先现在CI框架到自己的服务器目录下并配置config/config.php
PHP 复制代码
$config [ 'base_url' ]     =  'http://localhost:90/CI/' ;
复制代码

,接着下来配置数据库在config/databases.php我做练习配置如下
PHP 复制代码
$db [ 'default' ] [ 'hostname' ]  =  'localhost' ;
$db [ 'default' ] [ 'username' ]  =  'root' ;
$db [ 'default' ] [ 'password' ]  =  'root' ;
$db [ 'default' ] [ 'database' ]  =  'demo' ;
$db [ 'default' ] [ 'dbdriver' ]  =  'mysql' ;
 
复制代码

别的现在新手用不到紧接着创建一个数据库和一个user表,这个在我的源码包里面有你可以直接导入就好了,但是前提你要创建一个demo的数据库
reg类代码如下
PHP 复制代码
<?php
 
/***************************************
 * 用户注册模块和数据库的基本操作实践
 * 17:44 2013.2.18
 * @Author sdeep wang
 ***************************************/

class Reg  extends CI_Controller {
   
     function __construct ( ) { //此函数每次必须写是继承父类的方法
        parent ::__construct ( ) ;
         $this -> load -> database ( ) ; //这个是连接数据库的方法,放到这里的好处只要调用该方法就会连接数据库
     }
   
     function index ( ) {
         $this -> load -> view ( 'reg_view' ) ; //这个是使用哪个视图来显示相当于Smarty中的display
     }
   
     function reg_insert ( ) {
         $data [ 'name' ]  =  $this -> input -> post ( 'name' ) ; //这个是指取得POST数组的值然后赋值一个心的数组
         $data [ 'sex' ]  =  $this -> input -> post ( 'sex' ) ;
         $data [ 'age' ]  =  $this -> input -> post ( 'age' ) ;
         $data [ 'pwd' ]  =  md5 ( $this -> input -> post ( 'pwd' ) ) ; //这里用了一个md5加密只是为了演示
         $data [ 'email' ]  =  $this -> input -> post ( 'email' ) ;
         $this -> db -> insert ( 'user' , $data ) ; //这个是数据库操作插入操作
        redirect ( '/reg/reg_select/' ,  'refresh' ) ; //这个是跳转函数是url辅助函数里面的一个方法
 
     }
   
     function reg_select ( ) { //这个查询数据库的方法
         $this -> db -> select ( 'id,name,sex,age,email' ) ; //这里是查询要显示的字段,可不能像我第一次这样写啊$this->db->select('id','name','sex','age','email');
         $data [ 'query' ]  =  $this -> db -> get ( 'user' ) ; //这个是取得数据(如果你上面写的和我第一次一样的话只能取的一个字段)
         $this -> load -> view ( 'select_view' , $data ) ; //这里是调用哪个视图并分配数据给指定视图显示
     }
   
     function reg_delete ( ) { //删除数据的操作
         $id  =  $this -> input -> get ( 'id' ) ; //这里是取得get传过来的值
         $this -> db -> where ( 'id' , $id ) ; //这里是做where条件这个相当重要,如果没有这个你有可能把这个表数据都清空了
         $this -> db -> delete ( 'user' ) ; //删除指定id数据
        redirect ( '/reg/reg_select/' ,  'refresh' ) ; //同上跳转
     }
   
     function reg_update ( ) { //跟新数据的操作
         $data [ 'id' ]  =  $this -> input -> get ( 'id' ) ; //同上取的get传值过来的ID
         $this -> load -> view ( 'update_view' , $data ) ; //同上调用视图分配数据
     }
   
     function reg_com_update ( ) { //这个是真正的跟新数据操作方法
         $id  =  $this -> input -> post ( 'id' ) ; //同上取得post中的id值
         $data  =  array ( //把post数组的值封装到新的数组中为了下面跟新操作用
                     'name' => $this -> input -> post ( 'name' ) ,
                     'pwd' => md5 ( $this -> input -> post ( 'pwd' ) ) ,
                     'email' => $this -> input -> post ( 'email'  )
                 ) ;
         if ( ! empty ( $id )  &&  ( count ( $data )  >  1 ) ) { //判断id值是否传过来并且判断封装的数组是否有元素存在
             $this -> db -> where ( 'id' , $id ) ; //同上准备where条件
             $this -> db -> update ( 'user' , $data ) ; //跟新操作
         }
        redirect ( '/reg/reg_select/' ,  'refresh' ) ; //同上跳转
 
     }
}
?>
复制代码

视图代码如下
PHP 复制代码
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>用户注册</title>
    </head>
    <body>
        <form action=" <?php  echo site_url ( 'reg/reg_insert/' ) ;  ?>" method="post">
            <table>
                <tr>
                    <td>
                        姓名:<input type="text" name="name" />
                    </td>
                </tr>
                <tr>
                    <td>
                        姓别:<input type="radio" name="sex" value="1" />男
                             <input type="radio" name="sex" />女
                    </td>
                </tr>
                <tr>
                    <td>
                        年龄:<input type="text" name="age" />
                    </td>
                </tr>
                <tr>
                    <td>
                        密码:<input type="password" name="pwd" />
                    </td>
                </tr>
                <tr>
                    <td>
                        邮件:<input type="text" name="email" />
                    </td>
                </tr>
                <tr>
                    <td>
                        <input type="submit" value="注册" />
                        <input type="reset" value="重置" />
                    </td>
                </tr>
            </table>
        </form>
    </body>
</html>
复制代码

第二个视图代码如下
HTML 复制代码
<html>
     <head>
         <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
         <title>显示数据库中的所有注册用户 </title>
         <style>
            *{
                margin:0 auto;
            }
            table {
                border:1px solid gray;
                border-collapse: collapse;
                width:500px;
                text-align:center;
              
            }
            th,td {
                border:1px solid gray;   
            }
         </style>
     </head>
     <body>
         <table>
             <caption><h3>注册用户的显示 </h3></caption>
             <tr>
                 <th>ID </th>
                 <th>Name </th>
                 <th>Sex </th>
                 <th>Age </th>
                 <th>Email </th>
                 <th>Operate </th>
             </tr>
             <?php foreach($query->result() as $item):?>
             <tr>
                 <td><?php echo $item->id; ?> </td>
                 <td><?php echo $item->name; ?> </td>
                 <td><?php echo $item->sex; ?> </td>
                 <td><?php echo $item->age; ?> </td>
                 <td><?php echo $item->email; ?> </td>
                 <td>
                     <a href="<?php echo site_url('reg/reg_delete');?>?id= <?php echo $item->id;?>">删除 </a> |
                     <a href="<?php echo site_url('reg/reg_update');?>?id= <?php echo $item->id;?>">修改 </a>
                 </td>
             </tr>
             <?php endforeach; ?>
         </table>
     </body>
</html>
复制代码

第三个视图如下
HTML 复制代码
<html>
     <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>修改用户注册信息 </title>
     </head>
     <body>
         <form action="<?php echo site_url('reg/reg_com_update');?>" method="post">
             <table>
                 <tr>
                     <td>姓名: <input type="text" name="name" /></td>
                 </tr>
                 <tr>
                     <td>密码: <input type="password" name="pwd" /></td>
                 </tr>
                 <tr>
                     <td>邮件: <input type="text" name="email" /></td>
                 </tr>
                 <tr>
                     <td>
                         <input type="submit" value="修改" />
                         <input type="hidden" name="id" value="<?php echo $id; ?>" />
                     </td>
                 </tr>
             </table>
         </form>
     </body>
</html>
复制代码

效果图如下

キャプチャ.PNG 
就这样其中里面什么验证啊,校队之类的都没有做只是练习数据库的基本操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值