基于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文件的功能,特意在网上研究了几种方案,这里记录一下以备日后再次使用.当时想着找一种开发部署都比较清爽并且运行稳定的方案,但 ...
- 系统学习爬虫_2_urllib
什么是urllib urlopen urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cad ...
- shell脚本,计算1+2+3+....100等于多少?
第一种方法,通过for循环来计算[root@localhost wyb]# cat yibai.sh #!/bin/bash #从1+++...100的结果 i= ` do sum=$(($sum+i ...
- javase(10)_多线程基础
一.排队等待 1.下面的这个简单的 Java 程序完成四项不相关的任务.这样的程序有单个控制线程,控制在这四个任务之间线性地移动.此外,因为所需的资源 ― 打印机.磁盘.数据库和显示屏 -- 由于硬件 ...
- [UVA] 704 Colour Hash
所谓"周界搜索",练习搜索的好题,双向宽搜/迭代加深均可,还有很多细节有待完善,判重有比set更优的结构,宽搜还没写,先存一下. //Writer:GhostCai &&a ...
- 如何创作用纯 CSS 绘制一支栩栩如生的铅笔
效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/PaZYBw 可交互视频教 ...
- PyCharm学习笔记(二) 调试配置
选择PyCharm编译器 注意工程默认使用的解释器可能是Pycharm自带的,而不是单独安装的.
- Spring,Mybatis,Springmvc框架整合项目(第三部分)
一.静态资源不拦截 第二部分最后显示的几个页面其实都加载了css和js等文件,要不然不会显示的那么好看(假装好看吧),前面已经说了,我们在web.xml中配置了url的拦截形式是/,那么Dispatc ...
- BZOJ 2295: [POJ Challenge]我爱你啊
由于是子序列,那么难度就在于读入 #include<cstdio> #include<algorithm> #include<cstring> using name ...
- skkyk:题解 洛谷P3865 【【模板】ST表】
我不会ST表 智推推到这个题 发现标签中居然有线段树..? 于是贸然来了一发线段树 众所周知,线段树的查询是log(n)的 题目中"请注意最大数据时限只有0.8s,数据强度不低,请务必保证你 ...