版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Php動態(tài)網(wǎng)站設(shè)計與應(yīng)用段克奇Sea_coral@163.com3/28/20251第四講Php常用交互技術(shù)1.操作表單2.?傳值3.獲取客戶端IP、OS、IE4.cookie技術(shù)5.上傳文件6.發(fā)送郵件3/28/20252第四講Php常用交互技術(shù)1.操作表單$_POST[“”]數(shù)組$_GET[“”]數(shù)組比如:<form.html><FORMMETHOD="POST"ACTION="result.php">用戶名稱:<INPUTTYPE="text"NAME="userid"><BR>用戶口令:<INPUTTYPE="password"name="pwd"><BR>用戶愛好:<INPUTTYPE="checkbox"NAME="ah[]"value="film1">電影1<INPUTTYPE="checkbox"NAME="ah[]"value="film2">電影2<INPUTTYPE="checkbox"NAME="ah[]"value="film3">電影3<INPUTTYPE="checkbox"NAME="ah[]"value="film4">電影4<INPUTTYPE="submit"><INPUTTYPE="reset"></FORM>3/28/20253第四講Php常用交互技術(shù)1.操作表單這是result.php頁面的處理代碼:<?php$userid=$_POST["userid"];$pwd=$_POST["pwd"];$ah=$_POST["ah"];//成為數(shù)組$num=count($ah);//統(tǒng)計愛好的個數(shù)?>用戶名稱:<?phpecho$userid;?><br>用戶口令:<?phpecho$pwd;?><br>用戶愛好:一共有<?phpecho$num;?>個愛好!分別如下:<p><?phpforeach($ahas$r){ echo$r."<br>";}?>
注意:這兩個基本的數(shù)組只能用大寫字母:
錯誤:$_get[""]$post[""]3/28/20254第四講Php常用交互技術(shù)2.?傳值這個操作和asp環(huán)境完全相同,舉例說明3/28/20255第四講Php常用交互技術(shù)3.獲取客戶端IP、OS、IE<?phpecho$_SERVER["REMOTE_ADDR"];echo"<p>";echo$_SERVER["HTTP_USER_AGENT"];//可以用split()函數(shù)隱藏ip的某一位.?>3/28/20256第四講Php常用交互技術(shù)3.獲取客戶端IP、OS、IEfunctionos($text){ if((strstr($text,"NT5.2"))!="") $system="Windows2003"; elseif((strstr($text,"NT5.1"))!="") $system="WindowsXP"; elseif((strstr($text,"NT5"))!="") $system="Windows2000"; elseif((strstr($text,"NT4"))!="") $system="WindowsNT4"; elseif((strstr($text,"NT4.9"))!="") $system="WindowsME"; elseif((strstr($text,"98"))!="") $system="Windows98"; elseif((strstr($text,"95"))!="") $system="Windows95"; else $system="未知"; return$system; }3/28/20257第四講Php常用交互技術(shù)3.獲取客戶端IP、OS、IEfunctionbrowser($text){ if((strstr($text,"MSIE6.0"))!="") $r="InternetExplorer6.0"; elseif((strstr($text,"MSIE5.5"))!="") $r="InternetExplorer5.5"; elseif((strstr($text,"MSIE5.01"))!="") $r="InternetExplorer5.01"; elseif((strstr($text,"MSIE5.0"))!="") $r="InternetExplorer5.00"; elseif((strstr($text,"MSIE4.0"))!="") $r="InternetExplorer4.01"; else $r="未知"; return$r;}3/28/20258第四講Php常用交互技術(shù)3.獲取客戶端IP、OS、IE<?php//***********調(diào)用方法*******************echo$_SERVER["REMOTE_ADDR"];echo"<p>";echo$_SERVER["HTTP_USER_AGENT"];echo"<p>";echoos($_SERVER["HTTP_USER_AGENT"]);echo"<p>";echobrowser($_SERVER["HTTP_USER_AGENT"]);?>3/28/20259第四講Php常用交互技術(shù)4.Cookie技術(shù)應(yīng)用:Cookie是用戶訪問網(wǎng)站時,由web服務(wù)器在客戶端磁盤上寫入的一些小文件,用于記錄瀏覽者的一些個人信息以及所做的操作信息。在需要時你可以像使用一般變量一樣方便的使用cookie。Cookies由函數(shù)setcookie()設(shè)定。與輸出HTTP標(biāo)頭的函數(shù)header()一樣,setcookie()必須在任何實際內(nèi)容杯輸出到瀏覽器之前調(diào)用。在php環(huán)境下設(shè)置cookie變量的語法如下:
setcookie(“變量名稱”,變量結(jié)果,有效期) 比如: setcookie(“num”,1,time()+10)意思為聲明一個cookie變量num結(jié)果為1,有效期為10秒。 //time()函數(shù)返回自1970年1月1日以來的以秒數(shù)計的時間3/28/202510第四講Php常用交互技術(shù)4.Cookie技術(shù)應(yīng)用:通常是使用Time()和Mktime()來設(shè)置cookie變量的壽命,從而避免瀏覽器關(guān)閉時,cookie變量的終止。Time()函數(shù)用來確定當(dāng)前時間,秒為單位,比如:<?phpechotime();?>一般用此函數(shù)設(shè)置cookie終止的相對時間;比如:setcookie(“num”,1,time()+10)//表示相對于當(dāng)前時間10秒后失效Mktime()Mktime(hour,minute,second,month,day,year)比如:mktime(0,0,0,7,1,2005)表示2005-7-100:00:00一般用此函數(shù)設(shè)置cookie終止的絕對時間;比如:setcookie(“num”,1,mktime(0,0,0,7,1,2005))//表示絕對在2005-7-100:00:00后失效3/28/202511第四講Php常用交互技術(shù)4.Cookie技術(shù)應(yīng)用:訪問cookie:在php中,設(shè)置cookie后,不能再相同的請求中訪問cookie。而在設(shè)置完后,需要重載網(wǎng)頁才可以正常訪問。Isset()函數(shù):用于確定變量是否被設(shè)置,如已經(jīng)設(shè)置,返回true,否則返回false;Empty()函數(shù):Header()函數(shù):網(wǎng)頁重定向header("location:form.php?message=不能為空!");用$_COOKIE[“”]數(shù)組來接收cookie變量中的結(jié)果。比如:$num=$_COOKIE[“num”];//表示接收上述設(shè)置的cookie變量
3/28/202512第四講Php常用交互技術(shù)4.Cookie技術(shù)應(yīng)用:一個簡單的計數(shù)器例子:<?if(isset($_COOKIE["num"]))Setcookie("num",$_COOKIE["num"]+1,time()+60);elseSetcookie("num",1,time()+60);echo$_COOKIE["num"];?>//也可以結(jié)合前面講的圖形計數(shù)器效果改成圖形效果。//下面再舉一個用戶登陸用cookie變量記錄用戶信息的例子。3/28/202513第四講Php常用交互技術(shù)5.php上傳文件處理: php上傳文件是使用php環(huán)境中的全局變量$_FILES來完成的,全局變量$_FILES自PHP4.1.0起存在,此數(shù)組包含有所有上傳的文件信息。(在更早的版本中用$HTTP_POST_FILES替代)??梢匀缦陆⒁粋€特殊的表單來支持文件上傳:<formenctype="multipart/form-data"action="upload.php"method="POST">選擇上傳文件:<inputname="uploadfile"type="file"><inputtype="submit"value="上傳"></form>注:要確保文件上傳表單的屬性是enctype=“multipart/form-data”,否則文件上傳不了。以上范例中$_FILES數(shù)組的內(nèi)容如下所示。我們假設(shè)文件上傳字段的名稱如上例所示,為uploadfile。名稱可隨意命名。$_FILES[“uploadfile”]["name"] 客戶端機器文件的原名稱。$_FILES[“uploadfile”]["size"] 已上傳文件的大小,單位為字節(jié)。$_FILES[“uploadfile”]["tmp_name"]文件被上傳后在服務(wù)端儲存的臨時文件名。$_FILES[“uploadfile”]["error"]和該文件上傳錯誤代碼。在PHP4.2.0新增的。$_FILES[“uploadfile”]["type"]文件的MIME類型。[如果瀏覽器提供此信息的話。一個例子是“image/gif”。不過此MIME類型在PHP端并不檢查,因此不要想當(dāng)然認(rèn)為有這個值。]注:上述代碼中的["name"]["size"]["tmp_name"]["error"]["type"]都是關(guān)鍵字,不能拼寫出錯。3/28/202514第四講Php常用交互技術(shù)5.php上傳文件處理:以上范例中$_FILES數(shù)組的內(nèi)容如下所示。我們假設(shè)文件上傳字段的名稱如上例所示,為uploadfile。名稱可隨意命名。$_FILES[“uploadfile”]["name"] 客戶端機器文件的原名稱。$_FILES[“uploadfile”]["size"] 已上傳文件的大小,單位為字節(jié)。$_FILES[“uploadfile”]["tmp_name"]文件被上傳后在服務(wù)端儲存的臨時文件名。$_FILES[“uploadfile”]["error"]和該文件上傳錯誤代碼。在PHP4.2.0新增的。$_FILES[“uploadfile”][“type”]文件的MIME類型。 如果瀏覽器提供此信息的話。一個例子是“image/gif”。不過此MIME類型在PHP端并不檢查,因此不要想當(dāng)然認(rèn)為有這個值。 注:上述代碼中的[“name”][“size”][“tmp_name”][“error”][“type”]都是關(guān)鍵字,不能拼寫出錯。 文件被上傳后,默認(rèn)地會被儲存到服務(wù)端的默認(rèn)臨時目錄中,即php.ini中的upload_tmp_dir設(shè)置的路徑下。3/28/202515第四講Php常用交互技術(shù)5.php上傳文件處理:表單接收頁面upload.php<?php$t=0;/*設(shè)置超時限制時間缺省時間為30秒設(shè)置為0時為不限時*/set_time_limit($t);$uploadfile="upload/".($_FILES["uploadfile"]["name"]);if(move_uploaded_file($_FILES["uploadfile"]["tmp_name"],$uploadfile)){ echo"文件上傳成功!<ahref='javascript:history.back();'>返回</a>\n"; ?> <scriptlanguage="vbscript"> window.parent.form1.photo.value="<?phpecho$uploadfile?>" </script> <?php}else{ echo"文件上傳失??!<ahref='javascript:history.back();'>返回</a>";}?>3/28/202516第四講Php常用交互技術(shù)5.php上傳文件處理:
接受上傳文件的PHP腳本為了決定接下來要對該文件進(jìn)行哪些操作,應(yīng)該實現(xiàn)任何邏輯上必要的檢查。例如可以用$_FILES['userfile']['size']變量來排除過大或過小的文件,也可以通過$_FILES['userfile']['type']變量來排除文件類型和某種標(biāo)準(zhǔn)不相符合的文件,但只把這個當(dāng)作一系列檢查中的第一步,因為此值完全由客戶端控制而在PHP端并不檢查。如果表單中沒有選擇上傳的文件,則PHP變量$_FILES['userfile']['size']的值將為0,$_FILES['userfile']['tmp_name']將為空。如果該文件沒有被移動到其它地方也沒有被改名,則該文件將在表單請求結(jié)束時被刪除。3/28/202517第四講Php常用交互技術(shù)6.發(fā)送郵件:mail()函數(shù):<?phpif(mail($recipient,$subject,$message))echo"success!“;elseecho"failue!";/*$recipient:接收email地址$subject:主題$message:內(nèi)容*/?>3/28/202518第四講Php常用交互技術(shù)總結(jié):熟練掌握php的各種交互操作技術(shù)3/28/2025199、春去春又回,新桃換舊符。在那桃花盛開的地方,在這醉人芬芳的季節(jié),愿你生活像春天一樣陽光,心情像桃花一樣美麗,日子像桃子一樣甜蜜。3月-253月-25Friday,March28,202510、人的志向通常和他們的能力成正比例。18:52:0618:52:0618:523/28/20256:52:06PM11、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 合營公司合同范本
- 場地圍網(wǎng)合同范本
- 培訓(xùn)機構(gòu)位協(xié)議書
- 基金合同補充協(xié)議
- 墻布供銷合同范本
- 山航戰(zhàn)略協(xié)議書
- 拳館切磋合同范本
- 換簽勞動合同協(xié)議
- 旅游托管合同范本
- 旅游退款解協(xié)議書
- 2026湖北恩施州建始縣教育局所屬事業(yè)單位專項招聘高中教師28人備考筆試試題及答案解析
- 心肺康復(fù)課件
- 2025年山東省夏季普通高中學(xué)業(yè)水平合格考試物理試題(解析版)
- 工業(yè)區(qū)位因素與區(qū)位選擇課件(1)中圖版版
- 《人工智能基礎(chǔ)及應(yīng)用》 習(xí)題及參考答案 王方石 第1-9章
- 2024屆高考地理一輪復(fù)習(xí)+課件+工業(yè)區(qū)位因素
- 標(biāo)準(zhǔn)作業(yè)指導(dǎo)書模板(SOP)
- 科室質(zhì)控小組活動內(nèi)容及要求
- 圖形創(chuàng)意應(yīng)用課件
- 北京師范大學(xué)珠海校區(qū)
- 豎窯控制系統(tǒng)手冊
評論
0/150
提交評論