PHP中CodeIgniter入门教程——第四课 数据库操作
前面那课学习了 如何在配置文件填写一些必须的信息,这一课就学习下如何操作数据库。
简单建user表
1 2 3 4 5 6 7 8 |
CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` char(32) NOT NULL, `password` char(32) NOT NULL, `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `loginip` char(32) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; |
下面来学习curd增删改查
增加
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Welcome extends CI_Controller { public function index() { $this->load->view('welcome_message'); } /* 增加数据 start*/ public function add() { /*插入十条数据 start */ for ($i=0; $i <10 ; $i++) { $data=array(); $data=array( 'username'=>'user'.$i, 'password'=>md5('www.phperblog.cn'.'123456'), 'created'=>date('Y-m-d H:i:s',time()), 'loginip'=>$_SERVER["REMOTE_ADDR"], ); $this->db->insert('user',$data); } /*插入十条数据 end */ $this->load->view('welcome_message'); } /* 增加数据 end*/ } |
执行以下 是不是报错了?
1 |
Message: Undefined property: Welcome::$db |
因为没引数据库操作类
解决办法(一):在控制中添加
1 |
$this->load->database(); |
解决办法(二):在配置autoload.php文件中修改
1 |
$autoload['libraries'] = array('database'); |
删除
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
/* 删除数据 start*/ public function delete() { $this->load->database(); $result=$this->db->delete('users',array('id'=>1)); if($result){ echo '删除成功!'; }else{ echo '删除失败!'; } $this->load->view('welcome_message'); } /* 删除数据 end*/ |
修改
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
/* 修改数据 start*/ public function update() { $this->load->database(); $result=$this->db->where(array('id'=>2))->update('users',array('username'=>'update_user1')); if($result){ echo '修改成功!'; }else{ echo '修改失败!'; } $this->load->view('welcome_message'); } /* 修改数据 end*/ |
查找
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
/* 查找数据 start*/ public function select() { $this->load->database(); //第一种 start // $result=$this->db->where(array('id'=>2))->get('users')->result_array(); // var_dump($result); //第一种 end //第二种 start $sql="select * from users where id =?"; $result=$this->db->query($sql,array(2))->result_array(); var_dump($result); //第二种 end $this->load->view('welcome_message'); } /* 查找数据 end*/ |
查找有好几种方法,详情看文档。
- PHP中CodeIgniter入门教程——第三课 学习配置(下)
- PHP中CodeIgniter入门教程——第五课 类库介绍