第五講表單處理和文件上傳_第1頁
第五講表單處理和文件上傳_第2頁
第五講表單處理和文件上傳_第3頁
第五講表單處理和文件上傳_第4頁
第五講表單處理和文件上傳_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、目的和要求掌握窗體處理與URL參數(shù)$_POST與$_GET參數(shù)傳遞 掌握文件上傳相關(guān)操作掌握常用日期和時(shí)間函數(shù)HTMLHTML表單表單標(biāo)簽在在HTMLHTML表單相關(guān)標(biāo)簽主要有以下五個(gè),如下表所示:表單相關(guān)標(biāo)簽主要有以下五個(gè),如下表所示:表單標(biāo)簽表單標(biāo)簽說明說明Html表單標(biāo)簽表單標(biāo)簽輸入或選擇數(shù)據(jù)的表單域,不同輸入或選擇數(shù)據(jù)的表單域,不同type屬屬性表示不同的字段性表示不同的字段.定義多行的文本輸入控件定義多行的文本輸入控件創(chuàng)建單選或多選菜單創(chuàng)建單選或多選菜單定義下拉列表中的一個(gè)選項(xiàng)(一個(gè)條目)定義下拉列表中的一個(gè)選項(xiàng)(一個(gè)條目)建立網(wǎng)頁表單的基本建立網(wǎng)頁表單的基本架構(gòu) . . namen

2、ame屬性屬性:表單名稱。:表單名稱。methodmethod屬性屬性:設(shè)定數(shù)據(jù)送出方式:設(shè)定數(shù)據(jù)送出方式,有有g(shù)etget和和postpost兩種兩種actionaction屬性屬性:設(shè)定:設(shè)定PHPPHP表單處理程序所在的路徑,也可以是表單處理程序所在的路徑,也可以是URLURL網(wǎng)址,網(wǎng)址,enctypeenctype屬性屬性:設(shè)定表單數(shù)據(jù)傳送時(shí)的:設(shè)定表單數(shù)據(jù)傳送時(shí)的編碼方式。編碼方式。application/x-www-form-urlencoded在發(fā)送前編碼所有字符(默認(rèn))multipart/form-data不對(duì)字符編碼。上傳文件時(shí)必須使用該值。text/plain空格轉(zhuǎn)換為 +

3、 加號(hào),但不對(duì)特殊字符編碼。$_POST$_POST與與$_GET$_GET在在服務(wù)器服務(wù)器端的端的PHPPHP接收程序中接收程序中, ,必須依照必須依照標(biāo)簽中的標(biāo)簽中的methodmethod 屬性設(shè)定屬性設(shè)定值值, ,利用利用PHPPHP內(nèi)建的內(nèi)建的預(yù)定變量預(yù)定變量來接收傳過來的數(shù)據(jù)。來接收傳過來的數(shù)據(jù)。PHPPHP關(guān)于窗體處理的關(guān)于窗體處理的預(yù)定變量預(yù)定變量有下列兩種:有下列兩種: $_GET $_GET ( (默認(rèn)方式默認(rèn)方式): ): 接收由表單頁面使用接收由表單頁面使用get get 方法方法(URL(URL網(wǎng)址參數(shù)傳網(wǎng)址參數(shù)傳遞遞) ,) ,傳傳送過來的字段數(shù)據(jù)。送過來的字段數(shù)據(jù)

4、。屬于全局?jǐn)?shù)組變量屬于全局?jǐn)?shù)組變量, ,其數(shù)組其數(shù)組索引值為所接收字段的索引值為所接收字段的識(shí)別名稱識(shí)別名稱。$_POST$_POST : : 接收由表單頁面使用接收由表單頁面使用post post 方法方法(HTTP(HTTP頭傳頭傳遞資料遞資料) , ) , 傳送過來的字段數(shù)據(jù)。傳送過來的字段數(shù)據(jù)。屬于全局的數(shù)組變量屬于全局的數(shù)組變量, ,其其數(shù)組索引值為所接收字段的數(shù)組索引值為所接收字段的識(shí)別名稱識(shí)別名稱。兩者區(qū)別兩者區(qū)別而使用而使用POSTPOST方法時(shí),方法時(shí),HTTPHTTP會(huì)將表單的輸入信息會(huì)將表單的輸入信息進(jìn)行包裝后發(fā)送進(jìn)行包裝后發(fā)送,而,而GETGET方式是附加方式是附加在在

5、ActionAction所設(shè)定的所設(shè)定的URLURL之后發(fā)送。之后發(fā)送。使用使用POSTPOST方法方法, ,用戶數(shù)據(jù)的長(zhǎng)度用戶數(shù)據(jù)的長(zhǎng)度沒有限制沒有限制,而由于系統(tǒng)內(nèi)置變量的長(zhǎng)度限,而由于系統(tǒng)內(nèi)置變量的長(zhǎng)度限制了輸入字符串的長(zhǎng)度,因此,用制了輸入字符串的長(zhǎng)度,因此,用GETGET方式所能傳送的數(shù)據(jù)長(zhǎng)度方式所能傳送的數(shù)據(jù)長(zhǎng)度受到限制受到限制( (一般為一般為2k2k字節(jié)字節(jié)) )$_POST$_POST與與$_GET$_GET例如:網(wǎng)頁擁有名為例如:網(wǎng)頁擁有名為UsernameUsername的的標(biāo)簽標(biāo)簽,在,在PHPPHP程序代碼可以使用如下方法獲程序代碼可以使用如下方法獲取其值:取其值:$

6、name = $_POSTUsername;$name = $_POSTUsername;$name = $_GETUsername;$name = $_GETUsername;PHPPHP程序代碼到底是使用程序代碼到底是使用$_POST$_POST或或$_GET$_GET變量,需視變量,需視HTMLHTML表單表單卷標(biāo)卷標(biāo)的的methodmethod屬性值而定,當(dāng)屬性值而定,當(dāng)method=“post”,method=“post”,則使用則使用$_POST$_POST,否則使用,否則使用$_GET$_GETPHPPHP除了可以使用除了可以使用FormForm來傳遞數(shù)據(jù)外,還可以使用超鏈接來傳

7、遞數(shù)據(jù)外,還可以使用超鏈接URLURL參數(shù)參數(shù)轉(zhuǎn)址傳送轉(zhuǎn)址傳送數(shù)據(jù)給其他數(shù)據(jù)給其他PHPPHP程序程序。例如:。例如:a href=“test.php?Username=&Password=5678登入登入網(wǎng)網(wǎng)站站 以上參數(shù)需要使用以上參數(shù)需要使用_GET_GET方式獲取。方式獲取。 $username = $_GETUsername; $username = $_GETUsername; $pass = $_GETPassword; $pass = $_GETPassword;表單實(shí)例一表單實(shí)例一 Name: Age: Welcome.htm Welcome . You are years

8、old. Welcome.php表單實(shí)例二表單實(shí)例二 Name: Age: Test_get.htm Welcome . You are years old. Test_get.php表單實(shí)例三表單實(shí)例三值一值二 Test_select.php文件上傳實(shí)例文件上傳實(shí)例 Filename: upload.htm 0) echo Error: . $_FILESfileerror . ; else echo Upload: . $_FILESfilename . ; echo Type: . $_FILESfiletype . ; echo Size: . ($_FILESfilesize / 1

9、024) . Kb; echo Stored in: . $_FILESfiletmp_name; ?Upload_file.php $_FILESfilename - 被上傳文件的名稱被上傳文件的名稱 $_FILESfiletype - 被上傳文件的類型被上傳文件的類型 $_FILESfilesize - 被上傳文件的大小,以字節(jié)計(jì)被上傳文件的大小,以字節(jié)計(jì) $_FILESfiletmp_name - 存儲(chǔ)在服務(wù)器的文件的存儲(chǔ)在服務(wù)器的文件的臨時(shí)副本的名稱臨時(shí)副本的名稱 $_FILESfileerror - 由文件上傳導(dǎo)致的錯(cuò)誤代碼由文件上傳導(dǎo)致的錯(cuò)誤代碼?phpif ($_FILESfil

10、etype = image/gif)| ($_FILESfiletype = image/jpeg)| ($_FILESfiletype = image/pjpeg)& ($_FILESfilesize 0) echo Error: . $_FILESfileerror . ; else echo Upload: . $_FILESfilename . ; echo Type: . $_FILESfiletype . ; echo Size: . ($_FILESfilesize / 1024) . Kb; echo Stored in: . $_FILESfiletmp_name; else

11、 echo Invalid file; ?Upload_file_v2.php (增加上傳限制增加上傳限制)?phpif ($_FILESfiletype = image/gif)| ($_FILESfiletype = image/jpeg)| ($_FILESfiletype = image/pjpeg)& ($_FILESfilesize 0) echo Return Code: . $_FILESfileerror . ; else echo Upload: . $_FILESfilename . ; echo Type: . $_FILESfiletype . ; echo Size

12、: . ($_FILESfilesize / 1024) . Kb; echo Temp file: . $_FILESfiletmp_name . “; if (file_exists(upload/ . $_FILESfilename) echo $_FILESfilename . already exists. ; else move_uploaded_file($_FILESfiletmp_name, upload/ . $_FILESfilename); echo Stored in: . upload/ . $_FILESfilename; else echo Invalid fi

13、le“; ?Upload_file_v3.php (保存上傳文件保存上傳文件-完整版完整版)日期和時(shí)間函數(shù)日期和時(shí)間函數(shù)什么是什么是時(shí)間時(shí)間戳?戳? 時(shí)間時(shí)間戳是自戳是自 1970 1970 年年 1 1 月月 1 1 日(日(00:00:00 GMT00:00:00 GMT)至當(dāng)前)至當(dāng)前時(shí)間時(shí)間的的總總秒數(shù)。也被稱秒數(shù)。也被稱為為 Unix Unix 時(shí)間時(shí)間戳(戳(Unix TimestampUnix Timestamp)。)。例如:例如: echo time(); /1366959793 echo time(); /1366959793相關(guān)函數(shù)相關(guān)函數(shù)timetimedatedateg

14、etdategetdatemktimemktimestrtotimestrtotime在在phpphp中,中,計(jì)計(jì)算兩個(gè)算兩個(gè)時(shí)間時(shí)間的的間間隔,直接用隔,直接用這這兩個(gè)兩個(gè)時(shí)間時(shí)間相減即可,得到相減即可,得到時(shí)間時(shí)間差的秒差的秒數(shù)。其中,如果是字符串格式的數(shù)。其中,如果是字符串格式的時(shí)間時(shí)間,先用,先用strtotimestrtotime轉(zhuǎn)換為時(shí)間轉(zhuǎn)換為時(shí)間戳格式。戳格式。Date()Date()格式:格式:string string datedate ( string format , int timestamp ) ( string format , int timestamp )說明:

15、返回將整數(shù) timestamp 按照給定的格式字串而產(chǎn)生的字符串。如果沒有給出時(shí)間戳則使用本地當(dāng)前時(shí)間。Format: Y 4位年號(hào) M 替換成月份的英文簡(jiǎn)稱. m 替換成月份數(shù).d 替換成日數(shù). H 替換成小時(shí)數(shù)(24小時(shí)制). h 替換成小時(shí)數(shù)(12小時(shí)制). z 替換成從當(dāng)年1月1日以來的天數(shù). l 替換成星期幾的英文全稱. D 替換成星期幾的英文簡(jiǎn)稱.w 替換成星期幾(數(shù)字). i 替換成分鐘數(shù). s 替換成秒數(shù). A 替換成AM或PM. a 替換成am或pm. getdate & mktimegetdate & mktimegetdate:getdate:格式:格式:array getdate ( int timestamp )說明:返回一個(gè)根據(jù)說明:返回一個(gè)根據(jù) timestamp 得出的包含有日期信息的結(jié)合數(shù)組。如果沒得出的包含有日期信息的結(jié)合數(shù)組。如果沒有給出時(shí)間戳則認(rèn)為是當(dāng)前本地時(shí)間。有給出時(shí)間戳則認(rèn)為是當(dāng)前本地時(shí)間。 mktime:格式:格式:int mktime ( int hour , int minute , int second , int month , int day , int year )說明:根據(jù)給出的參數(shù)返回說明:根據(jù)給出的參數(shù)返回 Unix 時(shí)間戳?xí)r間戳

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論