基于ThinkPHP的鲜花网站设计报告参考资料_第1页
基于ThinkPHP的鲜花网站设计报告参考资料_第2页
基于ThinkPHP的鲜花网站设计报告参考资料_第3页
基于ThinkPHP的鲜花网站设计报告参考资料_第4页
基于ThinkPHP的鲜花网站设计报告参考资料_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

网页设计与网站建设设计报告学院: 电子商务学院 专业: 电子商务 班级: 姓名: 彭秋雨 学号: 成绩: 考核内容 评分标准 得分数据库 设计共 15 分。表结构(含主键)与表间关系设计是否合理。用户界面体验共 15 分。LOG 设计、页面的美观程度、导航功能。前台主要功能页面共 40 分。用户注册、鲜花(分类)浏览、购物车和订单查询。后台管理员功能页面共 30 分。订单状态管理、商品管理、网站文件上传。基于 ThinkPHP 框架的鲜花网站设计http:/localhost/Flower2/index.php/Index/index (项目名/入口文件/控制器/方法) http:/localhost/Flower2/1 基于 MVC 模式的 ThinkPHP 框架1.1 关于 MVC 框架ThinkPHP(以下简称 TP)是 PHP 的一个免费的面向对象的轻量级的开源开发框架,是为简化企业的 Web 应用开发而诞生的。使用 TP,你可以更方便和快捷地开发和部署Web 应用。TP 采用模块和操作的方式来执行。用户的请求会通过入口文件生成一个应用实例,应用控制器(也称核心控制器)会管理整个用户执行的过程,并负责模块的调度和操作的执行,并且在最后销毁该应用实例。TP 是基于 MVC 设计模式的。 MVC 只是一个抽象的概念,倡导将应用程序的逻辑层和表现层进行分离。TP 中的 MVC 分层大致体现在: 模型(M):模型的定义由 Model 类来完成; 控制器(C):应用控制器(核心控制器 App 类)和 Action 控制器都承担了控制器的角色,Action 控制器完成业务过程控制,而应用控制器负责调度控制; 视图(V):由 View 类和模板文件组成,模板 做到了与程序的 100分离,可以独立预览和制作。引入 TP 框架后,对于客户端的 HTTP 请求,PHP 网站的 App 应用控制器(对应于 C层)接收后,调用相应的 Action 控制器,其处理过程包含对 M 层(数据库访问)及 V 层(模板解析)的调用,最后返回客户端 HTML 代码。注意: TP 并不依赖 M 或者 V ,也就是说没有模型或者视图也一样可以工作。TP 甚至也不依赖 C,这是因为 TP 在 Action 之上还有一个总控制器,即 App 控制器,负责应用的总调度。在没有 C 的情况下,必然存在视图 V,否则就不再是一个完整的应用。引入 TP 框架后 PHP 网站工作流程图1.2 ThinkPHP 框架及其主要类(含方法)ThinkPHP(以下简称 TP)是 PHP 的一个免费的面向对象的轻量级的开源开发框架,是为简化企业的 Web 应用开发而诞生的。使用 TP,你可以更方便和快捷地开发和部署Web 应用。 模型类 M:创建与表对应的实体类对象模型在应用程序中有着更好的重用性和扩展性,在 TP 中,模型用于表描述实体对象或业务逻辑,模型类 Model 对应于 TP 核心包(基础类库)里的文件ThinkPHPLibCoreModel.class.php。使用下面的方式来创建与数据库表 user 对应的实体对象:$m=new Model(user); /创建对应于数据表 user 的实体(集)对象/$m=M(user); /等效写法Model 类封装了对数据的 CRUD 等方法,因此,可对$m 应用如下方法: select():查询表的全部记录,返回一个二维数组; limit():获取表中的若干连续的记录; where():记录集的条件筛选; find():查询指定条件的记录,返回一个二维数组; add():增加记录方法; delete():删除指定的记录,返回删除的记录总数; update():更新指定的记录方法,返回更新的记录总数; save():保存当前记录方法;1.3 引入 TP 框架后的网站文件系统下载 TP 框架压缩包并解压后,将其内的 TP 文件夹复制到一个需要该框架的 PHP 网站项目根目录(如 c:wampwwwtestTP)里,并编写引入了 TP 的前台主入口文件index.php,其关键代码如下:文件 c:wampwwwtestTPThinkPHPThinkPHP.php 的主要代码如下:/ 系统目录定义defined(THINK_PATH) or define(THINK_PATH, dirname(_FILE_)./);defined(APP_PATH) ordefine(APP_PATH, dirname($_SERVERSCRIPT_FILENAME)./);defined(APP_DEBUG) or define(APP_DEBUG,false); / 是否调试模式defined(RUNTIME_PATH) or define(RUNTIME_PATH,APP_PATH.Runtime/);/ 加载运行时文件require THINK_PATH.Common/runtime.php;可以看出,任何 TP 框架的应用最终都是进入 TP 框架的运行时环境。初次访问 http:/localhost:82/index.php 时的浏览效果如图 7.2.2 所示。图 7.2.2 初次访问时的浏览效果浏览网站项目的 index.php 文件,将在项目根目录里自动生成一个名为 Home 且包含有多个子文件夹的文件夹(如果项目根目录下没有文件夹 Home 的话)。此时,会在网站根文件夹 c:wampwwwtestTP 下自动创建一个名为 Home 的子文件,其文件夹的文件系统结构如图 7.2.3 所示。图 7.2.3 引入 TP 框架后的网站前台文件系统项目文件夹 testTP 主要包含前台子项目文件夹 Home 和 TP 框架的系统文件夹ThinkPHP,其主要的子文件夹及文件的作用如下: index.php:前台子项目 Home 的入口文件; Home:运行 index.php 后自动生成的前台子项目文件夹(首次运行时生成); HomeConfconfig.php:前台子项目 Home 应用 TP 的配置文件; HomeLibAction:前台子项目 Home 的模块(控制器)文件夹; HomeLibTpl:前台子项目 Home 的模板文件夹,每个模块在该文件夹又对应一个子文件夹; ThinkPHP:TP 框架的系统文件夹。当涉及数据库访问时,需要修存放在文件夹 HomeConf 里的配置文件,其代码可按如下格式配置:mysql, /设置数据库类型DB_HOST=localhost,/设置主机DB_NAME=flower_tp,/设置数据库名 -关键DB_USER=peng, /设置用户名 -关键DB_PWD=123, /设置密码 -关键DB_PORT=3306, /设置端口号/DB_DSN=mysql:/root:localhost:3306/flower_tp,/优先于 DB_NAME 设置 DB_PREFIX=tp_, /设置表前缀TMPL_L_DELIM=, /修改右定界符 ,默认是 URL_PATHINFO_DEPR=/,/修改 URL 的分隔符)SHOW_PAGE_TRACE=true /页面跟踪);?访问网站主页时,实质上是执行了主控模块 Index 的默认方法 index(),模块 Index 对应于文件 HomeActionIndexAction.class.php,该类文件中包含 index()方法。默认创建的文件 HomeActionIndexAction.class.php 的代码如下:show(* padding: 0; margin: 0; div padding: 4px 48px; body background: #fff; font-family: “微软雅黑“; color: #333; h1 font-size: 100px; font-weight: normal; margin-bottom: 12px; p line-height: 1.8em; font-size: 36px :)欢迎使用 ThinkPHP!,utf-8);注意:此处由 TP 自动生成的 Index 模块中的 index()方法没有调用模板,而在网站开发实务中,主控模块默认执行的方法一般会调用某个模板。类似地,可以在 TestTP 项目里建立网站后台入口文件 admin.php,其代码如下:2 TP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论