复习

1.      商品表

增删改查

index.php  add.php   view.php   edit.php   action.php

2.      MVC(Model(模型)  View(视图)  Controller(控制器))

v1版本

将原来的action(动作),写成方法,每一个action文件,就是个类

什么是入口文件?

用于浏览器直接访问的那个文件

什么是action?

是我们类中的,用于调用的方法

如何在同一个入口文件中,如何调用不同的action?

通过url中的参数来控制 $_GET['a'];

v2 版本

如何在同一个入口文件中,调用不同的类

接收参数,来确定当前要实例化哪一个类

通过url中的参数来控制 $_GET['a'];

什么是单一入口(实现单一入口)

浏览器只会访问同一个文件

1.路径问题,全部都相对于入口文件

2.方便安全控制,只需要入口文件内验证

v3

数据库访问,使用Model类

界面,使用Smarty来实现

MVC是设计模式

不要在入口文件中,直接调用action,应该由控制器自己去调用action

让入口文件把控制权,交给控制器

需要确保每一个控制器都有一个相同名字的入口方法,如何实现?

写一个控制器的父类(base类)  Controller类,在父类中写一个run()方法,让入口文件调用

v4

集成Smarty和Model

在入口文件中,包含Smarty类文件

让Controller继承自Smarty

在控制器基类中,写一个私有的 _initSmarty()方法,来配置Smarty,在run()方法调用

也可以写构造方法,用来初始化Smarty

在控制器中,就可以直接使用$this->assgin(),$this->display()来调用Smarty提供的方法;

v5

类的自动加载

将所有的控制器,都放到了controller文件夹中,将所有的model类,放在model目录中

类的自动加载

新建一个config/config.php,配置文件,并在入口文件中包含

MVC(Model(模型) View(视图) Controller(控制器))的更多相关文章

  1. [.net 面向对象程序设计深入](6).NET MVC 6 —— 模型、视图、控制器、路由等的基本操作

    [.net 面向对象程序设计深入](6).NET MVC 6 —— 模型.视图.控制器.路由等的基本操作 1. 使用Visual Studio 2015创建Web App (1)文件>新建> ...

  2. ASP.NET MVC轻教程 Step By Step 4——Model、View和Controller

    ASP.NET MVC中的Model(数据模型)主要包括定义数据结构.数据库读写.数据验证等等和对象处理相关的工作. 在解决方案资源管理器中找到Model文件夹,点击右键,添加一个新类,名为“Mess ...

  3. MVC使用jQuery从视图向控制器传递Model,数据验证,MVC HTML辅助方法小结

    //MVC HTML辅助类常用方法记录 (1)@Html.DisplayNameFor(model => model.Title)是显示列名, (2)@Html.DisplayFor(model ...

  4. Asp.Net Core 入门(四)—— Model、View、Controller

    和我们学习Asp.Net MVC一样,Asp.Net Core MVC的Model.View.Controller也和我们熟悉的Asp.Net MVC中的相似.不同的是我们在使用Asp.Net Cor ...

  5. 深入理解模型,视图和控制器(C#)

    这篇文章向你提供ASP.NET MVC 模型,视图和控制的高度概览.换句话说,解释一下ASP.NET MVC中的 ‘M’, ‘V’, 和 ‘C’. 看完这篇文章以后,你应该就能理解ASP.NET MV ...

  6. OPEN(SAP) UI5 学习入门系列之三:MVC (下) - 视图与控制器

    继续来学习UI5的MVC模型吧,这次我们来探讨视图与控制器. 1 视图 在MVC中,视图用来定义和渲染UI.在UI5中,视图的类型是可以自定义的,除了以下预定义的四种视图类型之外,你也可以定制自己的视 ...

  7. 【MVC框架】——View和Controller之间的传值

    在MVC中,Controller运行一个能够说是路由功能.它通过View传过来的数据,来决定应该调用哪一个Model,相同会把Model处理完的数据传给View,所以就总是涉及到Controller和 ...

  8. 1、ASP.NET Core2.0之Model、View、Controller

    一.新建空项目 打开VS2017,新建→项目,选择如下: 点击,确定,弹出的界面选择如下: 选择空项目,因为选择其他的话会自动生成很多用不到的类,显得项目不够“清爽”,ASP.NET Core选择2. ...

  9. MVC使用jQuery从视图向控制器传递Model的2种方法

    http://blog.csdn.net/make1828/article/details/29846003 using System.ComponentModel.DataAnnotations; ...

随机推荐

  1. redmine邮件发送功能配置详解

    redmine的邮件发送功能还是很有用的.像项目有更新啦,任务分配啦,都能邮件发送的相关责任人.我自己在linux服务器上安装并启动了redmine后,邮件一直发送了不了.查了网上的资料,都是讲修改下 ...

  2. 原型图利器 – Mockplus的审阅功能

    Mockplus是一款简洁快速的原型图工具 (http://www.mockplus.cn),最近推出了审阅功能. 审阅,旨在解决团队项目原型设计中的沟通和协作的问题. 没有孤立的原型,更没有一次成型 ...

  3. SQL中exists的使用方法

    EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False exists : 强调的是是否返回结果集,不要求知道返回什么, exists 与 in ...

  4. zabbix_agent安装(Centos+Ubuntu)

      Centos安装 安装依赖包    yum -y install mysql-devel libcurl-devel net-snmp-devel 添加用户 groupadd zabbix use ...

  5. JS:采摘自JS精粹

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. Java Filter过滤器的简单总结

    1.Filter的介绍 Filter技术是servlet 2.3新增加的功能.它能够对Servlet容器的请求和响应对象进行检查和修改. Filter本身并不生成请求和响应对象,只是提供过滤功能. F ...

  7. 【LeetCode】Sum of Two Integers

    问题描述: Calculate the sum of two integers a and b, but you are not allowed to use the operator + and - ...

  8. Java编程思想学习(九) 异常处理

    java的异常处理机制可以使程序有极好的容错性,让程序更加的健壮.所谓的异常,就是指的阻止当前方法或作用域继续执行的问题,,当程序运行时出现异常时,系统就会自动生成一个Exception对象来通知程序 ...

  9. BZOJ-1087 互不侵犯King 状压DP+DFS预处理

    1087: [SCOI2005]互不侵犯King Time Limit: 10 Sec Memory Limit: 162 MB Submit: 2337 Solved: 1366 [Submit][ ...

  10. maven运行javaWeb项目

    首先从svn下载下来的maven项目,需要点击项目,然后import--->Existing Maven Projects->全选之后点next就转换成功了,然后 run as--> ...