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

正文內(nèi)容

基于php實(shí)現(xiàn)的web圖片共享系統(tǒng)(編輯修改稿)

2025-07-16 12:37 本頁(yè)面
 

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