基于php实现的web图片共享系统—毕业设计论文内容摘要:
引擎解释执行程序代码的能力。 但 JSP 代码被编译成 Servlet 并由 Java 虚拟机解释执行,这种编译操作仅在对 JSP 页面的第一次请求时发生。 在 PHP、 ASP 、 JSP 环境下, HTML 代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。 普通的 HTML页面只依赖于 Web 服务器,而 PHP、 ASP 、 JSP 页面需要附加的语言引擎分析和执行程序代码。 程序代码的执行结果被重新嵌入到 HTML 代码中 ,然后一起发送给浏览器。 PHP、 ASP 、 JSP 两者都是面向 Web 服务器的技术,客户端浏览器不需要任何附加的软件支持。 然而,相较与 ASP , JSP, PHP有其便于部署,可快速开发并且使用灵活等特点。 比较适合于做中小型系统的快速开发,同等相较于 JSP, PHP 由于没有那么复杂的处理,所以在一定程度上执行速度优于 JSP。 方案选择 综上所述,本系统开发选择方案如下: 本图片共享 系统采用 PHP、 JavaScript 作为主要程序开发语言,采用smarttemplate + 独立后台管理模版的 构架, mysql 数据 库。 采用 B/S 结构。 系统界面美观内容丰富,很好的实现了与用户的交互。 系统技术平台 开发环境: WindowsServer2020 Datacenter Edition SP MySql 、Apache2; 开发工具: ZendStudio、 DreamweaverMX、 PhotoShop、记事本 ; 系统构架: PHP+Smarttemplate+JavaScript+; 开发语言: PHP5。 开发环境搭建 配置 PHP 5 将从网络上下载下来的文件解包,然后 需要 以下操作 : 打开 文件,修改以下内容: max_execution_time = 600。 max_input_time = 600。 memory_limit = 16M post_max_size = 20M file_uploads = On upload_max_filesize = 20M default_socket_timeout = 60 以上选项避免由于用户上传过大的图片导致 PHP 处理超时。 register_globals = Off magic_quotes_gpc = On 以上选项为防止用户恶意提 交。 extension_dir = D:\PHP\PHP\ext 以上选项用于设定 PHP 的扩展所在文件夹。 extension= 该扩展用于支持长字符集 extension= 该扩展用于支持 PHP 读取图片的 EXIF 信息。 extension= 该扩展用于 PHP 对图片的操作以及验证码的生成操作。 extension= extension= 以上两项用于 PHP 对 MYSQL 的支持 extension= 该扩展用于 PHP对 SOCKET的支持,主要用于支持上传时显示上传进度的 UPU库 Apache 将从网络上下载下来的文件解包,然后 需要 以下操作 : 1) 修改 Apache 的配置文件 : 进入到解包根目录下的 conf 目录。 打开 文件,修改以下内容: 设置执行超时: Timeout 300 设置监听 80端口: Listen 80 开启 APACHE 对 PHP 的支持: LoadModule php5_module d:/php/php/ 开启 URL 重写功能: LoadModule rewrite_module modules/ 设定 WEB 服务的根目录: DocumentRoot E:\web 设置 URL 重写所生效的范围: Directory / Options FollowSymLinks AllowOverride ALL /Directory 设置中文支持: AddLanguage zhCN .zh AddLanguage zhTW .zhtw AddLanguage zh . 设置默认语言 AddDefaultCharset GB2312 设置默认索引页: DirectoryIndex 设置 APACHE 对 PHP 文件进行解析: AddType application/xdphp .php 2) 将 APACHE 安装为服务: 进入命令行,转到 APACHE 文件夹下的 BIN 文件夹,执行以下命令: apache k install 3) 启动 APACHE 服务器 执行以下命令: start apache2 mysql 安装 1) 将从网上下载的 MYSQL 解包 ,然后修改其配置文件如下 : defaultcharacterset=utf8 //由于整个系统均使用 UTF8,故数据库也统一文字编码 key_buffer_size=20M max_allowed_packet=15M //以上设置用于处理将图片存入数据库的大量信息数据。 2) 运行 对 MYSQL 进行初始化设置。 3) 安装 MYSQL 服务 执行 mysql – install 将 MYSQL 进程作为系统服务运行。 4) 使用 MYSQLADMIN 对 MYSQL 的管理员进行管理 PHPMYADMIN 配置 找到 phpmysdmin 的配置文件,修改以下地方。 $cfg[39。 Servers39。 ][$i][39。 host39。 ] = 39。 localhost39。 //设置为本机(只做调试用) $cfg[39。 Servers39。 ][$i][39。 port39。 ] = 39。 330639。 //MySQL 的端口 $cfg[39。 Servers39。 ][$i][39。 connect_type39。 ] = 39。 tcp39。 //设置与 MySQL 连接的 方式 $cfg[39。 Servers39。 ][$i][39。 press39。 ] = FALSE。 //使用压缩协议进行传输 $cfg[39。 Servers39。 ][$i][39。 auth_type39。 ] = 39。 config39。 //如果 PHP安装模式为 Apache,可以使用 和 cookie;如果 PHP安装模式为 CGI,可以使用 cookie;默认为 config $cfg[39。 Servers39。 ][$i][39。 user39。 ] = 39。 root39。 //MySQL 连接用户 $cfg[39。 Servers39。 ][$i][39。 password39。 ] = 39。 39。 //MySQL 连接密码 5 实现技术与数据结构 系统架构设计 网络架构 整个网络架构体系如下图: 图 51 图片共享系统网络构架图 系统逻辑服务器 在逻辑上可以将使用的服务器分为三类,每类服务器均有不同的功能: Web 服务器 : 该服务器进行 Web 发布,提供用于普通用户业务工作的操作界面(网页),亦将用户的操作参数 通过处理后生成的数据库查询 传递回 数据库 服务器,同时亦将结果 在经过解析以及重新编码后生成的数据 通过网页的方式返回到用户 前端。 同时,该 WEB服务器还负责解析用户的请求以及动态的生成用户所能看见的 Web 页面。 数据库服务器: 该服务器上安装了 MySQL 数据库系统,数据库系统的设计主要针对该服务器。 在此存放着所有的原始数据及用于系统的其它结构数据,所有的用户及管理者对 信息的新增,修改,删除最终都将反映在该服务器上。 同时,该服务器需要处理通过 WEB 服务器传输来的查询请求,并将查询结果返回给应用服务器。 系统处理流程 本系统采用 B/S 模式 ,Smartemplate 构架,用户使用本系统时,只需要安装上网的浏览器即可,不需要安装其它任何软 件。 系统处理流程如下图所示: 用 户 浏 览 器业 务 逻 辑( 解 析 )模 型( 通 用 模 版 )视 图( p h p )发 出 H t t p 请 求 新 请 求 转 发生 成S m a r t T e m p l a t e更 新 / 返 回H T M L同 请 求 缓 存 转 发控 制 器( 请 求 解析 , 判 断缓 存 ) 图 52 系统处理流程 基于 MVC 的 Smartemplate 架构 本系统采用基于 MVC的构架实现。 模型由实现业务逻辑的 PHP解析脚本构成,控制器由 SmartTemplate 来实现,视图由一组含有 SmartTemplate 格式标签的HTML 文件构成。 下图简要描述了工作流程。 图 53响应用户请求的工作流程 MVC 是一种设计模式,它强制性的把应用程序的输入、处理和输出分开。 MVC把应用程序分成三个核心模块:模型、视图和控 制器,它们之间的相互关系如下图所示: ( 控 制 器 )接 受 用 户 请 求调 用 模 型 响 应 用 户 请 求选 择 视 图 显 示 相 应 结 果( 视 图 )显 示 模 型 状 态接 受 数 据 更 新 请 求把 用 户 输 入 数 据 传 给 控 制 器( 模 型 )代 表 应 用 程 序 状 态响 应 状 态 查 询处 理 业 务 流 程通 知 视 图 业 务 状 态 更 新选 择 视 图 业 务 处 理用 户 请 求状 态 查 询通 知 数 据 更 新 图 54 MVC设计模式 SmartTemplate 技术概述 在这个系统制作过程中,大量采用了 SmartTemplate 技术,现就自己对 SmartTemplate 技术的理解表述如下: SmartTemplate 是一个支持大型 WEB 应用程序的模板引擎 ,是由服务器端调用和执行的 PHP 库。 SmartTemplate 本身与协议无关。 要理解 SmartTemplate,首先需要理解 模板引擎 的 工作方式。 普通模板引擎工作方 式 : 你的 PHP 脚本指定一个 HTML 模板, 指定 动态内容并显示。 模板分析器使用指派的内容替换模板内所有的占位符, 然后显示给用户。 SmartTemplate 的工作方式类似模板编译,他把模板转换为可执行的 PHP脚本,并且保存起来以备以后重用。 当一个新的模板在第一次被使用时,模板内所有的占位符被替换为简单的可输出指定内容的 PHP 代码元素。 举 个例子,模板片断 H3{TITLE}/H3,将被转换为 H3?php echo $TITLE。 ?/H3. 如果你指定内容给正确的变量 , 将再也不需要进行 模板分析了 . 程序要做 的仅仅是自己包含并执行编译 后的模板 . 这 种缓存方式能大大 减少模板引擎的运行时间。 SmartTemplate 与 html 模版之间的关系 为了增强系统的移植性,使系统能在 Windows 、 NT、 UNIX 及 Linux 环境下运行而不进行源代码的修改,采用 PHP 技术。 开发基于 WEB 的软件系统,采用PHP 脚本 工具,用 PHP 的动态库连接访问数据库,将一些对象的属性和方法封装在 PHP 类库中,客户端界面可用 HTML 与 JavaScript 配合完成,服务器端的应用处理可用 PHP 脚本+ SmartTemplate 引擎来具体实现。 html 模版主要用来定义最终的表现页面,而 PHP 脚本主要用来完成大量的逻辑处理, SmartTemplate 用于将处理后的数据动态的封装到 html 模版中,最终显示的页面有 PHP 解析后发送到客户端。 也就是说,经过封装以及解析的 html模版主要用来发送给前端的用户,而 PHP 脚本主要来响应用户的请求,完成请求的逻辑处理 ,同时,充当着控制者的角色,用来负责响应的事务处理。 SmartTemplate 本身没有任何的业务处理逻辑,它只是简单地检索 PHP 脚本定义的对象,再将动态的内容插入到预定义的 html 模版中。 PHP 脚本创建 SmartTemplate 需要的变量和对象,再根据用户的行为,决定处理哪个 html 模版并发送给用户。 在实际开发过程中,往往是先把 html 模版开发出来,然后再将 html 模版中需要动态生成的部分用 SmartTemplate 预定义的标签代替。 这样做的好处是充分利用了 HTML 的页面表现能力,避免了 PHP 脚本在页面表现方面的不足,大大缩短了开发周期,各尽所能。 以下是节选程序代码中的 HTML 模版转换为最终的页面对象: 1. 首先,用 HTML 编辑工具开发出 HTML 页面 „ „. „. „. form action= id=find_photo method=post div align=left 搜索图片 : input type=text name=key size=24 / input id=findbutton type=submit name=find_photo value=搜索 / /div /form !this is the content of the slidshow !。基于php实现的web图片共享系统—毕业设计论文
相关推荐
GLfloat fogColor[4]= {, , , }。 //此处设置 雾的颜色 、//和系统的背景色一致,效果比较明显 fogMode = GL_LINEAR。 //采用、线性变化的雾化效果 glFogi (GL_FOG_MODE, fogMode)。 glFogfv (GL_FOG_COLOR, fogColor)。 //设置雾的颜色 , 与背景匹配 glFogf
IGHT: d2d2d2 1px solid。 borderbottom: 1px solid Align=top width=180 height= 100% table cellSpacing=0 cellPadding=4 width=100% align=center border=0 trtd colspan=3 background=images/ /td/tr trtd
... 11 6 结论 ........................................................................................................................... 13 参考文献 .......................................................
元都要进行一系列的逐个片元操作,这样最后的象素值 BZ 送入帧缓冲器实现图形的显示。 OpenGL 图形操作步骤 在上面说明了 OpenGL 的基本工作流程,根据这个流程可以归纳出在 OpenGL 中进行主要的图形操作直至在计算机屏幕上渲染绘制出三维图形景观的基本步骤: ( 1) 建立景物模型 根据基本图形单元建立景物模型,并且对所建立的模型进行数学描述( OpenGL 中把:点、线、多边形
{ if(bActive()) { ()。 DrawGLScene()。 ::SwapBuffers(wglGetCurrentDC())。 } else { ShowWindow(m_hWnd,SW_SHOWMINIMIZED)。 WaitMessage()。 } } } 使用 PeekMessage 而不是 GetMessage,这样当消息队列中没有消息时便不会等待而是返回一个 FALSE
测技术具有直观、可监视范围广、可获取更多种类的交通参 数以及费用较低等优点、因而可广泛应用于交叉路口和公路干线的交通监视系统中。 视频车辆检测技术未来趋势 ( 1)智能化 视频车辆检测技术经过多年的发展,检测精度、深度、范围等指标都有很大的提高,但系统的智能化程度还十分有限,距离“人脑”的判断能力还很远。 ( 2) 视觉检测立体化 体视觉是计算机被动测距方法中最重要的距离感知技术之一。