1 加载静态页
从php官网下载下来的文件,将其中的部分代码拷贝到项目根目录下。
1.1 在application/controller中创建控制器Pages.php,必须继承CI_Controller
class Pages extends CI_Controller{ public function view($page='home'){ if(!file_exists(APPPATH.'views/pages/'.$page.'.php')){ show_404(); } $data['title']=ucfirst($page);//把字符串中的首字符转换为大写。 $this->load->view('templates/header',$data); $this->load->view('pages/'.$page,$data); $this->load->view('templates/footer',$data); } }
1.2 页面头部footer.php
<html>
<head>
<title>CodeIgniter Tutorialtitle>
head>
<body>
<h1>$title; ?>h1>
1.3 页面尾部footer.php
<em>©2015em>
body>
html>
1.4 内容页home.php
echo 'hello world';
1.5 路由中心:
将url映射映射到指定的控制类的方法中:
$route['default_controller'] = 'pages/view';
$route['(:any)'] = 'pages/view/$1';
如:http://localhost:8080/demo/index.php/home,将参数home映射到方法的$page参数中。
项目文件列表:
2 数据查询
2.1 首先配置数据库信息。
2.2 创建一个模型News_model.php,在application/models中创建,必须继承CI_Model。
class News_model extends CI_Model {
public function __construct() {
//加载数据库类
$this->load->database();
}
public function get_news($id){
if(!empty($id)){
//查询所有的信息
//查询user表
$query=$this->db->get('user');
$result=$query->result_array();
return $result;
}else{
//根据条件查询
$query=$this->db->get_where('user',array('id'=>$id));
$result=$query->row_array();
//var_dump($result);die();
return $result;
}
}
}
2.3 控制层:
class News extends CI_Controller{
public function __construct(){
//执行父类的构造器__construct
parent::__construct();
//加载模型
$this->load->model('News_model');
$this->load->helper('url_helper');
}
public function view($id){
//执行News_model类中的get_news方法
$data['news_items']=$this->News_model->get_news($id);
//下面这种格式也是可以的。
//$data=array('new_items'=>$this->News_model->get_news($id));
//$data['news_items']=$data['news_items']->fetch_object()->memTotal;
$this->load->view('templates/header');
$this->load->view('new/index', $data);
$this->load->view('templates/footer');
}
}?>
2.4 页面index.php:
foreach ($news_items as $news_item): ?>
echo $news_item['id']; ?>
echo $news_item['name']; ?>
2.5 rount中的配置:
$route['news/(:any)']='news/view/$1';
$route['default_controller'] = 'pages/view';
3 添加数据
3.1 页面:
<form action="http://localhost:8080/demo/index.php/user/add_user" method="POST" enctype="multipart/form-data">
<input name="name" /><br />
<input name="password">input><br />
<input type="submit" name="submit" value="Create news item" />
form>
3.2 控制中心:
class User extends CI_Controller{
public function __construct(){
//执行父类的构造器__construct
parent::__construct();
//加载模型
$this->load->model('User_Model');
$this->load->helper('url_helper');
}
public function add_form(){
$this->load->helper('url');
$this->load->view('pages/user');
}
public function add_user(){
//var_dump($this->input->post('name'));die();
/* if($this->input->post('name')==NULL){ }else{ */
$this->User_Model->add_user();
//}
$this->load->view('pages/user');
}
}
?>
3.3 模型:
class User_Model extends CI_Model{
public function __construct() {
//加载数据库类
$this->load->database();
}
public function add_user(){
$data=array('name'=> $_POST['name'],'password' => $_POST['password']);
var_dump($data);
return $this->db->insert('user',$data);
}
}
?>
4 删除
将被删除的ID放在URL的第三个位置,可以通过如下放方式获取
载入: this−>load−>helper(‘urlhelper′); this->url->segment(3);
Model中的函数:
$this->db->delete(‘user’,id);
5 更新
this−>db−>update(′user′, data, where); data为一个类似于Map的集合,包含被更新的信息,key为字段,value为值,$where为筛选条件。也是一个map集合。
摘自CodeIgniter中国社区。http://codeigniter.org.cn/user_guide/