基于CI框架的管理系统
1:ci框架是有入口文件的,前端和后台入口文件(index.php,admin.php);里面修改$application_folder = 'application/home';
2:项目基本都是在application里面的,home(前端)和admin(后台);
3:home文件夹下的config文件下面的routes.php($route['default_controller'] = 'article';),config.php($config['base_url'] = 'http://localhost/Ci';在上传服务器的时候改为$config['base_url'] = '/';还需要在最后加入时区设置:date_default_timezone_set('PRC');$config['time_zone'] = date_default_timezone_get(););
注意:Linux系统设置只能识别PRC,// date_default_timezone_set('Asia/ShangHai');不识别Asia/ShangHai,所以设置的时候注意:
4:controller是写控制器的,注意:
(1):文件名必须是大写字母开头,如:'Blog.php';文件保存到 application/controllers/ 目录下
(2):类名必须以大写字母开头。
model是写模型的,view是放视图的;
5:ci框架需要注意的一些细节问题:
define('IS_POST',strtolower($_SERVER["REQUEST_METHOD"]) == 'post');[自定义设置IS_POST方法]
$this->load->helper(array('form','url'));[加载辅助函数]
$this->load->library('session');[加载sessions]
$this->load->database();[加载连接数据库]
$this->load->view('article/add')[加载视图]
6:form表单提交:
($this->load->library('form_validation');
$this->form_validation->set_rules('pname','用户账号','required|max_length[10]');
$this->form_validation->set_rules('ppwd','密码','required');
$this->form_validation->set_rules('ypwd','确认密码','required|matches[ppwd]');
$this->form_validation->set_rules('pemail','邮箱','required|valid_email');
if($this->form_validation->run()==false){
$this->load->view('zhuce/index');
})
$arr=$this->input->post();[ci框架接受post提交数据]
7:ci框架加载连接数据库,查询数据:
($this->load->database();
$query=$this->db->get_where('ci_people',array('pname'=>$arr['pname']));
$res=$query->result();)
8:路径跳转问题
echo "<script>window.location.href='".site_url('Zhuce/index')."'</script>";[不加参数跳转]
echo "<script>window.location.href='".site_url('Zhuce/index/{$uid}')."'</script>";[加参数跳转]
9:加载模型
$this->load->model('Zhuce_model');
$res=$this->Zhuce_model->edit($arr);
10:ci框架地址栏获取参数
$aid=$this->uri->segment(3);[1是控制器,2是方法,3是值]
11:session存储和删除
$this->session->set_userdata('pname',$val->pname);[存储session];
$this->session->unset_userdata('plast_login',$val->plast_login);[删除session];
12:文件上传:
$arr=$this->input->post();
//文件上传:
$config['upload_path']="./public/uploads/";
$config['allowed_types']='jpg|gif|png|jpeg';
$config['file_name']=uniqid(time());
$config['max_size']=1024;
$config['max_height']=768;
$config['max_width']=1024;
$config['overwrite']=FALSE;
$this->load->library('upload',$config);
if(!file_exists($config['upload_path'])){
mkdir($config['upload_path'],0777,true);
}
if($this->upload->do_upload('pimg')){//上传表单图片的name名
$file=$this->upload->data();//返回上传文件信息
$arr['pimg']=$file['file_name'];
}else{
//图片上传失败报错:
$error=$this->upload->display_errors();
$error=strip_tags($error);
echo "<script>alert('".$error."')</script>";
echo "<script>window.location.href='".site_url('Ziliao/edit')."'</script>";
}
13:视图:view
<font color="red"><?php echo form_error('atitle'); ?></font>[表单报错]
视图字段截取
<td class='text-center'><?php if(strlen($val->aabs)>8){
echo mb_substr($val->aabs,0,8)."...";
}else{
echo $val->aabs;
} ?></td>
基于CI框架的管理系统的更多相关文章
- PHP RBAC权限控制,基于CI框架(版本3.1.9)
2018年11月7日更新:目前功能已做到事件级别权限控制,如:后台用户的添加操作.删除操作和保存操作等具体到事件级的操作方法有权限则展示相应的操作菜单,没权限则隐藏相应菜单或提示无权限到目前算是真正做 ...
- php获取json文件数据并动态修改网站头部文件meta信息 --基于CI框架
话不多说了.直接开始吧 (如果有中文.请注意json只认utf-8编码) 首先你需要有一个json文件数据 { "index": { ...
- 基于ci框架 修改出来了一个带农历的万年历。
1这里没有写model:代码一看就懂,没什么负杂地方,就是麻烦一点. 直接control模块的代码: <?php if ( ! defined('BASEPATH')) exit('No dir ...
- php获取服务器和mysql等信息输出到页面(基于ci框架)
function show($varName) { switch($result = get_cfg_var($varName)) { case 0: return '< ...
- 专家动态页面的实现——php基于CI框架的学习(二)
以下是本次学习的页面 打开相关文件,整个定义了一个Expert类 class Expert extends CI_Controller{} 在Expert类里定义了几个参数以及说明其使用了哪些mode ...
- nginx location匹配顺序及CI框架的nginx配置
Nginx location匹配顺序如下: 用前缀字符串定义的location规则对URI进行匹配测试. =号定义了精确的前缀字符串匹配,如果发现精确匹配则使用当前规则.否则继续下一步匹配. 匹配其它 ...
- CodeIgniter (CI)框架中的数据库查询汇总
引言: 前两天业务涉及到一个拉取答题排行榜的需求,数据库里数据是这样的: 同一个人可能提交过多次成绩,所以同一个人可能会有多次记录: 同一个人提交的多次成绩中可能有至少两次成绩是一样的. 于是,查询的 ...
- 某cms审计思路,以及ci框架如何找寻注入点
某cms审计思路,以及ci框架如何找寻注入点 ABOUT 之前闲着没事的时候审的某cms,之前看一群大表哥刷过一次这个cms,想着看看还能不能赶得上分一杯羹,还是审计出来些东西,来说一说一个前台注入吧 ...
- 基于SSH框架的学生公寓管理系统的质量属性
系统名称:学生公寓管理系统 首先介绍一下学生公寓管理系统,在学生公寓管理方面,针对学生有关住宿信息问题进行管理,学生公寓管理系统主要包含了1)学生信息记录:包括学号.姓名.性别.院系.班级:2)住宿信 ...
随机推荐
- 【工具篇】在.Net中实现HTML生成图片或PDF的几种方式
前段时间由于项目上的需求,要在.Net平台下实现把HTML内容生成图片或PDF文件的功能,特意在网上研究了几种方案,这里记录一下以备日后再次使用.当时想着找一种开发部署都比较清爽并且运行稳定的方案,但 ...
- CPP-基础:strcpy之于C++(
以下对strcpy函数错误的是? char atr1[]="string"; ]; char *str3; char *str4="sting"; A.strc ...
- 修改linux的时区问题
修改linux的时区问题 配置服务器节点上的时区的步骤: 1.先生成时区配置文件Asia/Shanghai,用交互式命令 tzselect 即可: 2.拷贝该时区文件,覆盖系统本地时区配置: cp / ...
- PAT (Advanced Level) Practise - 1096. Consecutive Factors (20)
http://www.patest.cn/contests/pat-a-practise/1096 Among all the factors of a positive integer N, the ...
- Windows10+anaconda,python3.5, 安装glove-python
Windows10+anaconda,python3.5, 安装glove-python安装glove安装之前 Visual C++ 2015 Build Tools开始安装安装glove最近因为一个 ...
- ios之UISegmentedcontol
初始化UISegmentedControl NSArray *arr = [[NSArray alloc]initWithObjects:@"轻拍",@"长按" ...
- verilog behavioral modeling ---Block statements
block statements : 1. sequential block : begin-end block 2.parallel block : fork - join bloc ...
- sweetalert使用随笔
删除前确认框: //找到删除那天记录的按钮,触发点击事件 $(".del").on('click', function () { swal({ title: "操作确认& ...
- 元组-tuple
Python内置的元组数据类型:tuple tuple和list非常类似,但tuple一旦初始化就不能修改,因此它没有append(),insert()这样的方法 当定义一个tuple时,tuple的 ...
- python--第一类对象,函数名,变量名
一 . 第一类对象 函数对象可以像变量一样进行赋值 , 还可以作为列表的元素进行使用 可以作为返回值返回 , 可以作为参数进行传递 def func(): def people(): print('金 ...