freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于php實現(xiàn)的web圖片共享系統(tǒng)—免費畢業(yè)設(shè)計論文(編輯修改稿)

2024-12-29 16:05 本頁面
 

【文章內(nèi)容簡介】 引擎解釋執(zhí)行程序代碼的能力。但 JSP 代碼被編譯成 Servlet 并由 Java 虛擬機解釋執(zhí)行,這種編譯操作僅在對 JSP 頁面的第一次請求時發(fā)生。在 PHP、 ASP 、 JSP 環(huán)境下, HTML 代碼主要負(fù)責(zé)描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的 HTML頁面只依賴于 Web 服務(wù)器,而 PHP、 ASP 、 JSP 頁面需要附加的語言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到 HTML 代碼中 ,然后一起發(fā)送給瀏覽器。 PHP、 ASP 、 JSP 兩者都是面向 Web 服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持。 然而,相較與 ASP , JSP, PHP有其便于部署,可快速開發(fā)并且使用靈活等特點。比較適合于做中小型系統(tǒng)的快速開發(fā),同等相較于 JSP, PHP 由于沒有那么復(fù)雜的處理,所以在一定程度上執(zhí)行速度優(yōu)于 JSP。 方案選擇 綜上所述,本系統(tǒng)開發(fā)選擇方案如下: 本圖片共享 系統(tǒng)采用 PHP、 JavaScript 作為主要程序開發(fā)語言,采用smarttemplate + 獨立后臺管理模版的 構(gòu)架, mysql 數(shù)據(jù) 庫。采用 B/S 結(jié)構(gòu)。系統(tǒng)界面美觀內(nèi)容豐富,很好的實現(xiàn)了與用戶的交互 。 系統(tǒng)技術(shù)平臺 開發(fā)環(huán)境: WindowsServer2020 Datacenter Edition SP MySql 、Apache2; 開發(fā)工具: ZendStudio、 DreamweaverMX、 PhotoShop、記事本 ; 系統(tǒng)構(gòu)架: PHP+Smarttemplate+JavaScript+; 開發(fā)語言: PHP5。 開發(fā)環(huán)境搭建 ? 配置 PHP 5 將從網(wǎng)絡(luò)上下載下來的文件解包,然后 需要 以下操作 : 打開 文件,修改以下內(nèi)容: 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 以上選項避免由于用戶上傳過大的圖片導(dǎo)致 PHP 處理超時。 register_globals = Off magic_quotes_gpc = On 以上選項為防止用戶惡意提 交。 extension_dir = D:\PHP\PHP\ext 以上選項用于設(shè)定 PHP 的擴展所在文件夾。 extension= 該擴展用于支持長字符集 extension= 該擴展用于支持 PHP 讀取圖片的 EXIF 信息。 extension= 該擴展用于 PHP 對圖片的操作以及驗證碼的生成操作。 extension= extension= 以上兩項用于 PHP 對 MYSQL 的支持 extension= 該擴展用于 PHP對 SOCKET的支持,主要用于支持上傳時顯示上傳進度的 UPU庫 ? Apache 將從網(wǎng)絡(luò)上下載下來的文件解包,然后 需要 以下操作 : 1) 修改 Apache 的配置文件 : 進入到解包根目錄下的 conf 目錄。打開 文件,修改以下內(nèi)容: 設(shè)置執(zhí)行超時: Timeout 300 設(shè)置監(jiān)聽 80端口: Listen 80 開啟 APACHE 對 PHP 的支持: LoadModule php5_module d:/php/php/ 開啟 URL 重寫功能: LoadModule rewrite_module modules/ 設(shè)定 WEB 服務(wù)的根目錄: DocumentRoot E:\web 設(shè)置 URL 重寫所生效的范圍: Directory / Options FollowSymLinks AllowOverride ALL /Directory 設(shè)置中文支持: AddLanguage zhCN .zh AddLanguage zhTW .zhtw AddLanguage zh . 設(shè)置默認(rèn)語言 AddDefaultCharset GB2312 設(shè)置默認(rèn)索引頁: DirectoryIndex 設(shè)置 APACHE 對 PHP 文件進行解析: AddType application/xdphp .php 2) 將 APACHE 安裝為服務(wù): 進入命令行,轉(zhuǎn)到 APACHE 文件夾下的 BIN 文件夾,執(zhí)行以下命令: apache k install 3) 啟動 APACHE 服務(wù)器 執(zhí)行以下命令: start apache2 ? mysql 安裝 1) 將從網(wǎng)上下載的 MYSQL 解包 ,然后修改其配置文件如下 : defaultcharacterset=utf8 //由于整個系統(tǒng)均使用 UTF8,故數(shù)據(jù)庫也統(tǒng)一文字編碼 key_buffer_size=20M max_allowed_packet=15M //以上設(shè)置用于處理將圖片存入數(shù)據(jù)庫的大量信息數(shù)據(jù)。 2) 運行 對 MYSQL 進行初始化設(shè)置。 3) 安裝 MYSQL 服務(wù) 執(zhí)行 mysql – install 將 MYSQL 進程作為系統(tǒng)服務(wù)運行。 4) 使用 MYSQLADMIN 對 MYSQL 的管理員進行管理 ? PHPMYADMIN 配置 找到 phpmysdmin 的配置文件,修改以下地方。 $cfg[39。Servers39。][$i][39。host39。] = 39。localhost39。//設(shè)置為本機(只做調(diào)試用) $cfg[39。Servers39。][$i][39。port39。] = 39。330639。//MySQL 的端口 $cfg[39。Servers39。][$i][39。connect_type39。] = 39。tcp39。//設(shè)置與 MySQL 連接的 方式 $cfg[39。Servers39。][$i][39。press39。] = FALSE。//使用壓縮協(xié)議進行傳輸 $cfg[39。Servers39。][$i][39。auth_type39。] = 39。config39。//如果 PHP安裝模式為 Apache,可以使用 和 cookie;如果 PHP安裝模式為 CGI,可以使用 cookie;默認(rèn)為 config $cfg[39。Servers39。][$i][39。user39。] = 39。root39。//MySQL 連接用戶 $cfg[39。Servers39。][$i][39。password39。] = 39。39。//MySQL 連接密碼 5 實現(xiàn)技術(shù)與數(shù)據(jù)結(jié)構(gòu) 系統(tǒng)架構(gòu)設(shè)計 網(wǎng)絡(luò)架構(gòu) 整個網(wǎng)絡(luò)架構(gòu)體系如下圖: 圖 51 圖片共享系統(tǒng)網(wǎng)絡(luò)構(gòu)架圖 系統(tǒng)邏輯服務(wù)器 在邏輯上可以將使用的服務(wù)器分為三類,每類服務(wù)器均有不同的功能: Web 服務(wù)器 : 該服務(wù)器進行 Web 發(fā)布,提供用于普通用戶業(yè)務(wù)工作的操作界面(網(wǎng)頁),亦將用戶的操作參數(shù) 通過處理后生成的數(shù)據(jù)庫查詢 傳遞回 數(shù)據(jù)庫 服務(wù)器,同時亦將結(jié)果 在經(jīng)過解析以及重新編碼后生成的數(shù)據(jù) 通過網(wǎng)頁的方式返回到用戶 前端。 同時,該 WEB服務(wù)器還負(fù)責(zé)解析用戶的請求以及動態(tài)的生成用戶所能看見的 Web 頁面。 數(shù)據(jù)庫服務(wù)器: 該服務(wù)器上安裝了 MySQL 數(shù)據(jù)庫系統(tǒng),數(shù)據(jù)庫系統(tǒng)的設(shè)計主要針對該服務(wù)器。在此存放著所有的原始數(shù)據(jù)及用于系統(tǒng)的其它結(jié)構(gòu)數(shù)據(jù),所有的用戶及管理者對 信息的新增,修改,刪除最終都將反映在該服務(wù)器上 。 同時,該服務(wù)器需要處理通過 WEB 服務(wù)器傳輸來的查詢請求,并將查詢結(jié)果返回給應(yīng)用服務(wù)器。 系統(tǒng)處理流程 本系統(tǒng)采用 B/S 模式 ,Smartemplate 構(gòu)架,用戶使用本系統(tǒng)時,只需要安裝上網(wǎng)的瀏覽器即可,不需要安裝其它任何軟 件。系統(tǒng)處理流程如下圖所示: 用 戶 瀏 覽 器業(yè) 務(wù) 邏 輯( 解 析 )模 型( 通 用 模 版 )視 圖( p h p )發(fā) 出 H t t p 請 求 新 請 求 轉(zhuǎn) 發(fā)生 成S m a r t T e m p l a t e更 新 / 返 回H T M L同 請 求 緩 存 轉(zhuǎn) 發(fā)控 制 器( 請 求 解析 , 判 斷緩 存 ) 圖 52 系統(tǒng)處理流程 基于 MVC 的 Smartemplate 架構(gòu) 本系統(tǒng)采用基于 MVC的構(gòu)架實現(xiàn)。模型由實現(xiàn)業(yè)務(wù)邏輯的 PHP解析腳本構(gòu)成,控制器由 SmartTemplate 來實現(xiàn),視圖由一組含有 SmartTemplate 格式標(biāo)簽的HTML 文件構(gòu)成。下圖簡要描述了工作流程。 圖 53響應(yīng)用戶請求的工作流程 MVC 是一種設(shè)計模式,它強制性的把應(yīng)用程序的輸入、處理和輸出分開。 MVC把應(yīng)用程序分成三個核心模塊:模型、視圖和控 制器,它們之間的相互關(guān)系如下圖所示: ( 控 制 器 )接 受 用 戶 請 求調(diào) 用 模 型 響 應(yīng) 用 戶 請 求選 擇 視 圖 顯 示 相 應(yīng) 結(jié) 果( 視 圖 )顯 示 模 型 狀 態(tài)接 受 數(shù) 據(jù) 更 新 請 求把 用 戶 輸 入 數(shù) 據(jù) 傳 給 控 制 器( 模 型 )代 表 應(yīng) 用 程 序 狀 態(tài)響 應(yīng) 狀 態(tài) 查 詢處 理 業(yè) 務(wù) 流 程通 知 視 圖 業(yè) 務(wù) 狀 態(tài) 更 新選 擇 視 圖 業(yè) 務(wù) 處 理用 戶 請 求狀 態(tài) 查 詢通 知 數(shù) 據(jù) 更 新 圖 54 MVC設(shè)計模式 SmartTemplate 技術(shù)概述 在這個系統(tǒng)制作過程中,大量采用了 SmartTemplate 技術(shù),現(xiàn)就自己對 SmartTemplate 技術(shù)的理解表述如下: SmartTemplate 是一個支持大型 WEB 應(yīng)用程序的模板引擎 ,是由服務(wù)器端調(diào)用和執(zhí)行的 PHP 庫 。 SmartTemplate 本身與協(xié)議無關(guān)。 要理解 SmartTemplate,首先需要理解 模板引擎 的 工作方式 。 普通模板引擎工作方 式 : 你的 PHP 腳本指定一個 HTML 模板, 指定 動態(tài)內(nèi)容并顯示。模板分析器使用指派的內(nèi)容替換模板內(nèi)所有的占位符, 然后顯示給用戶 。 SmartTemplate 的工作方式類似模板編譯,他把模板轉(zhuǎn)換為可執(zhí)行的 PHP腳本,并且保存起來以備以后重用。當(dāng)一個新的模板在第一次被使用時,模板內(nèi)所有的占位符被替換為簡單的可輸出指定內(nèi)容的 PHP 代碼元素。舉 個例子,模板片斷 H3{TITLE}/H3,將被轉(zhuǎn)換為 H3?php echo $TITLE。 ?/H3. 如果你指定內(nèi)容給正確的變量 , 將再也不需要進行 模板分析了 . 程序要做 的僅僅是自己包含并執(zhí)行編譯 后的模板 . 這 種緩存方式能大大 減少模板引擎的運行時間 。 SmartTemplate 與 html 模版之間的關(guān)系 為了增強系統(tǒng)的移植性,使系統(tǒng)能在 Windows 、 NT、 UNIX 及 Linux 環(huán)境下運行而不進行源代碼的修改,采用 PHP 技術(shù)。開發(fā)基于 WEB 的軟件系統(tǒng),采用PHP 腳本 工具,用 PHP 的動態(tài)庫連接訪問數(shù)據(jù)庫,將一些對象的屬性和方法封裝在 PHP 類庫中,客戶端界面可用 HTML 與 JavaScript 配合完成,服務(wù)器端的應(yīng)用處理可用 PHP 腳本+ SmartTemplate 引擎來具體實現(xiàn)。 html 模版主要用來定義最終的表現(xiàn)頁面,而 PHP 腳本主要用來完成大量的邏輯處理, SmartTemplate 用于將處理后的數(shù)據(jù)動態(tài)的封裝到 html 模版中,最終顯示的頁面有 PHP 解析后發(fā)送到客戶端。也就是說,經(jīng)過封裝以及解析的 html模版主要用來發(fā)送給前端的用戶,而 PHP 腳本主要來響應(yīng)用戶的請求,完成請求的邏輯處理 ,同時,充當(dāng)著控制者的角色,用來負(fù)責(zé)響應(yīng)的事務(wù)處理。 SmartTemplate 本身沒有任何的業(yè)務(wù)處理邏輯,它只是簡單地檢索 PHP 腳本定義的對象,再將動態(tài)的內(nèi)容插入到預(yù)定義的 html 模版中。 PHP 腳本創(chuàng)建 SmartTemplate 需要的變量和對象,再根據(jù)用戶的行為,決定處理哪個 html 模版并發(fā)送給用戶。 在實際開發(fā)過程中,往往是先把 html 模版開發(fā)出來,然后再將 html 模版中需要動態(tài)生成的部分用 SmartTemplate 預(yù)定義的標(biāo)簽代替。這樣做的好處是充分利用了 HTML 的頁面表現(xiàn)能力,避免了 PHP 腳本在頁面表現(xiàn)方面的不足,大大縮短了開發(fā)周期,各盡所能。 以下是節(jié)選程序代碼中的 HTML 模版轉(zhuǎn)換為最終的頁面對象: 1. 首先,用 HTML 編輯工具開發(fā)出 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 !
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1