作为前端开发人员,掌握一门后端语言是必不可少的,PHP的CI框架是一个快速开发框架,基于MVC,比较接近原生PHP,在原有的PHP代码上封装了许多类,易上手,容易扩展,适用于小项目,并且CI的文档及案例及其丰富,我用了5天时间从一头雾水照猫画虎用CI框架写了一个个人博客,顺路也看了看数据库,所以CI框架针对新手及小项目还是非常友好的.学完这个我由衷的明白了为什么论坛上的人将PHP奉为世界上最好的语言.

推荐的书籍:PHP与MySQL程序设计

我们所关心的为XAMPP下的这几部分:

1.Apache---web服务器,客户端发送request到服务器端,服务器返回response给客户端

2.Mysql

3.Php运行环境

注意:将项目文件夹放在xampp下的htdocs下,将ci框架直接下载到项目文件夹里

CI框架分为几部分:

1.Models模型   简单来说就是所有放跟数据库有关的操作以及其他用来摆放实体类工具类的地方

2.Controls控制器  起到一个连接的作用,将用户界面和后台数据库将View中的用户界面显示,并调用Models里的操作,实现相关操作

3.View视图   用户界面,主要用html等前端语言来写

小提示:

隐藏文件.htaccess是用来做访问控制的

System下的文件基本不需要改动

Application下config目录是配置目录,根据所需修改相关配置

编码流程示例:

1.在view下创建一个html文件名为login.php,简单写一下代码

<form id="frm_login" action="welcome/check_login" method="POST"">

<table>

<tbody>

<tr>

<th nowrap="nowrap">邮箱 或 账号:</th>

<td><input name="username" type="text"></td>

</tr>

<tr>

<th>登录密码:</th>

<td><input name="password" type="password"></td>

</tr>

<tr class="buttons">

<td>

<input value="现在登录" class="BUTTON SUBMIT" type="submit"/>

</td>

</tr>

</tbody>

</table>

</form>

2.在控制器里先加载界面

public function login()

{

$this->load->view('login');

}

通过在地址栏下输入地址localhost:/myblog/welcome/login就能看到登录界面

3.当输入账号密码后点击登录按钮,会通过表单post来提交数据,前端与后端的联系是通过name传值.所以将所需传值的变量设置name,input name="username"以及input name="password",并利用表单通过action跳转到相应控制器下的方法,这里为action="welcome/check_login" ,控制器下check_login代码如下

public function check_login()

{

//1.接收数据

$username = $this->input->post('username');

$password = $this->input->post('password');

//2.验证

//3.数据库操作

$this->load->model('user_model');//加载model文件

$result = $this->user_model->get_by_name_pwd($username, $password);//调用model文件下的方法并传值

if ($result) {

echo 'ok';

} else {

echo 'fail';

}

}

控制器中的代码有3个步骤,接收数据,验证,数据库操作(包括加载model文件和用model文件下的方法并传值,然后根据返回结果写所需代码)

4.操作model,主要为数据库操作,建数据库表的过程省略

public function get_by_name_pwd($name,$pwd){

$query = $this -> db -> get_where('t_user',array(

'username' => $name,

'password' => $pwd

));

return $query -> row();

}

接收传过来的值并在数据库中查询,将结果返回到上一步控制器中,然后继续进行

CI框架简单易上手,拿它做个毕业设计什么的简直跟玩一样,哈哈哈

浅谈PHP的CI框架(一)的更多相关文章

  1. 浅谈一下SSI+Oracle框架的整合搭建

    浅谈一下SSI+Oracle框架的整合搭建 最近换了一家公司,公司几乎所有的项目都采用的是Struts2+Spring+Ibatis+Oracle的架构,上一个东家一般用的就是JSF+Spring,所 ...

  2. 浅谈Java的集合框架

    浅谈Java的集合框架 一.    初识集合 重所周知,Java有四大集合框架群,Set.List.Queue和Map.四种集合的关注点不同,Set 关注事物的唯一性,List 关注事物的索引列表,Q ...

  3. 浅谈java类集框架和数据结构(2)

    继续上一篇浅谈java类集框架和数据结构(1)的内容 上一篇博文简介了java类集框架几大常见集合框架,这一篇博文主要分析一些接口特性以及性能优化. 一:List接口 List是最常见的数据结构了,主 ...

  4. 浅谈五大Python Web框架

    转载:http://feilong.me/2011/01/talk-about-Python-web-framework 说到Web Framework,Ruby的世界Rails一统江湖,而Pytho ...

  5. 【前端框架系列】浅谈当前基于bootstrap框架的几种主流前端框架

    一  概述 当新开发一个项目或产品时,技术选型是一个不可缺少的环节,在软件架构中有着举足轻重的作用,可以这么说,技术选型的好坏直接影响项目或产品的成败优劣,因此,在进行软件架构时,一定要想好技术选型. ...

  6. 浅谈java类集框架和数据结构(1)

    在另外一篇博客我简单介绍了java类集框架相关代码和理论. 这一篇博客我主要分析一下各个类集框架的原理以及源码分析. 一:先谈谈LinkedList 这是LinkedList源码的开头,我们能看到几点 ...

  7. 浅谈IDEA搭建SSM框架的集成

    前言 学习完MyBatis,Spring,SpringMVC之后,我们需要做的就是将这三者联系起来,Spring实现业务对象管理,Spring MVC负责请求的转发和视图管理, MyBatis作为数据 ...

  8. 浅谈IDEA集成SSM框架(SpringMVC+Spring+MyBatis)

    前言 学习完MyBatis,Spring,SpringMVC之后,我们需要做的就是将这三者联系起来,Spring实现业务对象管理,Spring MVC负责请求的转发和视图管理, MyBatis作为数据 ...

  9. 浅谈Java反射与框架

    Java反射 1.示例 1.用户类 package com.lf.entity; import com.lf.annotation.SetProperty; import com.lf.annotat ...

随机推荐

  1. adapter中报错:Can't create handler inside thread that has not called Looper.prepare()

    http://stackoverflow.com/questions/9357513/cant-create-handler-inside-thread-that-has-not-called-loo ...

  2. Java 抽象类和接口与多态

    引入抽象类和接口的原因 即"针对接口编程",关键就在多态,即向上转型 当变量的的声明类型是超类型时,即抽象类或者接口,这样,只要是具体实现此超类型的类所产生的对象,都可以指定给这个 ...

  3. CreateForm(

    /// <summary> /// 打开新的子窗体 /// </summary> /// <param name="strName">窗体的类名 ...

  4. How do I connect to a local elevation server?

    How do I connect to a local elevation server? brett Reply | Threaded | More     Mar 18, 2009; 10:02p ...

  5. CSS文字大小单位PX、EM、PT

    老是被人问到px.pt和em的区别,自己有时候也会纠结到底该用什么单位,今天特意查了一些文章,下面这篇虽然很久远了,但解释的比较全面,转载收藏之.点击查看原文 这里引用的是Jorux的"95 ...

  6. vue-cli 官方模板webpack-simple的npm run dev 与npm run bulid的一些问题

    npm run dev命令后并不会在dist目录下生成build.js文件,开发环境下build.js是在运行内存中的. 在package.json的scripts属性的dev后面加上--port 8 ...

  7. AngularJS 讲解五, Factory ,Service , Provider

    一. 首先说一下,为什么要引入Factory,Service和Provider这三个Service层. 1.因为我们不应该在controller层写入大量的业务逻辑和持久化数据,controller层 ...

  8. 网站运维工具使用iis日志分析工具分析iis日志(iis日志的配置)

    我们只能通过各种系统日志来分析网站的运行状况,对于部署在IIS上的网站来说,IIS日志提供了最有价值的信息,我们可以通过它来分析网站的响应情况,来判断网站是否有性能问题,或者存在哪些需要改进的地方 对 ...

  9. 微信小程序t填坑之旅一(接入)

    一.小程序简介 小程序是什么? 首先"程序"这两个字我们不陌生.看看你手机上的各个软件,那就是程序.平时的程序是直接跑在我们原生的操作系统上面的.小程序是间接跑在原生系统上的.因为 ...

  10. PrefixSpan算法原理总结

    前面我们讲到频繁项集挖掘的关联算法Apriori和FP Tree.这两个算法都是挖掘频繁项集的.而今天我们要介绍的PrefixSpan算法也是关联算法,但是它是挖掘频繁序列模式的,因此要解决的问题目标 ...