




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本章內(nèi)容任務(wù)1:創(chuàng)建用戶注冊(cè)頁(yè)面任務(wù)2:注冊(cè)信息輸入驗(yàn)證任務(wù)3:用戶頭像上傳任務(wù)4:將注冊(cè)信息寫(xiě)入數(shù)據(jù)庫(kù)4.1任務(wù)1:創(chuàng)建用戶注冊(cè)頁(yè)面本節(jié)主要內(nèi)容掌握表單設(shè)計(jì)理解HTTP協(xié)議基本概念掌握響應(yīng)客戶請(qǐng)求的處理方法;表單表單:獲取用戶信息,使網(wǎng)頁(yè)具有交互的功能<form>標(biāo)簽用于創(chuàng)建表單,格式如下:<formaction=method=>
表單內(nèi)容</form>屬性名用法action
處理程序的程序名,通常是URLmethod提交方式,可以是GET或POSTGET方式,以文本的形式提交數(shù)據(jù),有長(zhǎng)度限制POST方式,以封裝的形式提交數(shù)據(jù),無(wú)長(zhǎng)度限制
表單用戶輸入?yún)^(qū):用于接受用戶輸入<INPUT>標(biāo)簽用于創(chuàng)建用戶輸入?yún)^(qū),共有8種類(lèi)型GET提交方式<formmethod="GET"action="doLogin.php"><inputtype="text"name="txtUsername"id="txtUsername"value=""/><inputtype="password"name="txtPassword"id="txtPassword"value=""/><inputtype="submit"/><inputtype="reset"/></form>
xxxxxx/doLogin.php?txtUsername=admin&txtPassword=123GET方法傳遞數(shù)據(jù)時(shí),把表單中變量名和值附加到ACTION屬性中指定的URL后,并使用”?“分割。GET方法會(huì)顯示用戶的名稱(chēng)和密碼,建議提交重要數(shù)據(jù)使用POST方法POST提交方法POST方法比GET方法更安全,它不會(huì)把表單數(shù)據(jù)顯示在URL中;而且POST方法可以傳遞更長(zhǎng)的數(shù)據(jù)內(nèi)容。<formmethod="POST"action="doLogin.php"><inputtype="text"name="txtUsername"id="txtUsername"value=""/><inputtype="password"name="txtPassword"id="txtPassword"value=""/><inputtype="submit"name="btnSubmit"/><inputtype="reset"name="btnReset"/></form>xxxxxx/doLogin.php使用PHP全局變量變量名作用與用法$_GETGET方法提交數(shù)據(jù)所構(gòu)成的數(shù)組,用法如下,如:$_GET[‘username’],獲取username文本框中的值$_POSTPOST方法提交數(shù)據(jù)所構(gòu)成的數(shù)組$_COOKIE通過(guò)HTTPCookie傳遞到頁(yè)面的信息$_SESSION包含所有與會(huì)話變量有關(guān)的信息,常用于會(huì)話控制和頁(yè)面間傳值$_FILES包含通過(guò)POST方法傳遞的已上傳文件數(shù)組$_GLOBALS由所有已定義的全局變量組成的數(shù)組$_REQUEST由$_GET,$_POST和$_COOKIE組成的數(shù)組。$_SERVER服務(wù)器相關(guān)的信息例4-1:使用get方法傳遞表單數(shù)據(jù)實(shí)現(xiàn)用戶登錄表單(ch4_1.php),表單的傳值方式為get。用戶在表單中輸入用戶名和密碼后,單擊提交按鈕,然后在接收頁(yè)面(ch4_1_ok.php)中顯示輸入的用戶名和密碼。用戶登錄表單設(shè)計(jì)如圖所示。例4-1:使用get方法傳遞表單數(shù)據(jù)設(shè)計(jì)思路:使用form標(biāo)簽添加表單,使用輸入控件添加表單元素。為了表單的美觀性,使用CSS樣式表來(lái)修改表單的設(shè)計(jì)外觀。由于表單的傳值方式為get,故使用全局變量$_GET在接收頁(yè)面提取表單元素的數(shù)據(jù)。編輯樣式表文件styledform.cssform{display:table;padding:10px;border:thindotted#7e7e7e;margin:20pxauto; /*實(shí)現(xiàn)頁(yè)面居中顯示效果*/ }
formtextarea{width:300px;height:200px; }div.tableRow{ display:table-row;}div.tableRowp{ display:table-cell; vertical-align:top; padding:3px; }div.tableRowp:first-child{ text-align:right; width:100px;}div.tableRowp.heading{ font-weight:bold; font-size:+2; text-align:center; padding:20px;}ch4_1.php<formname="form1"action="ch4_1_ok.php"method="get">
<divclass="tableRow"><p></p><pclass="heading">用戶登錄</p></div><divclass="tableRow">
<p>用戶名:</p>
<p><inputtype="text"name="username"size="30"required/></p> </div>
<divclass="tableRow">
<p>密碼:</p>
<p><inputtype="password"name="userpassword"size="30"required/></p></div><divclass="tableRow">
<p></p>
<p><inputtype="submit"value="提交"></p></div></form>ch4_1_ok.php<?php$username=$_GET["username"];$userpassword=$_GET["userpassword"];echo"您輸入的用戶名為:".$username.",密碼為:".$userpassword;?>例4-2:使用post方法傳遞表單數(shù)據(jù)實(shí)現(xiàn)一個(gè)收集用戶個(gè)人信息的表單(ch4_2.php),添加文本框、單選按鈕、復(fù)選按鈕、文本區(qū)域等多種表單元素,并在表單處理頁(yè)面(ch4_2_ok.php)顯示搜集的用戶個(gè)人信息,表單的傳值方式為post。收集用戶個(gè)人信息表單設(shè)計(jì)如圖所示。例4-2:使用post方法傳遞表單數(shù)據(jù)設(shè)計(jì)思路:為了表單的美觀性,使用例4-1同樣的方式樣式化網(wǎng)頁(yè)。添加form標(biāo)簽以及各種輸入標(biāo)簽,完成表單數(shù)據(jù)的收集。由于表單指定使用post方法傳遞數(shù)據(jù),故使用全局變量$_POST在接收頁(yè)面提取表單元素的數(shù)據(jù)。Ch4_2.php部分代碼<formname="form1"action="ch4_2_ok.php"method="post">
<divclass="tableRow"><p></p><pclass="heading">請(qǐng)輸入您的個(gè)人信息</p></div>
<divclass="tableRow"><p>姓名:</p><p><inputtype="text"name="name"></p></div>
<divclass="tableRow"><p>性別:</p><p><inputtype="radio"name="gender"value="男"checked>男<inputtype="radio"name="gender"value="女">女
</p></div><divclass="tableRow"><p>出生年月:</p><p><inputtype="date"name="birthday"></p></div><divclass="tableRow"><p>愛(ài)好:</p><p>
<inputtype="checkbox"name="hobby[]"value="聽(tīng)音樂(lè)">聽(tīng)音樂(lè)<inputtype="checkbox"name="hobby[]"value="演奏樂(lè)器">演奏樂(lè)器<inputtype="checkbox"name="hobby[]"value="打籃球">打籃球<inputtype="checkbox"name="hobby[]"value="看書(shū)">看書(shū)<inputtype="checkbox"name="hobby[]"value="上網(wǎng)">上網(wǎng)
</p></div><divclass="tableRow"><p>地址:</p><p><inputtype="text"name="address"></p></div><divclass="tableRow"><p>電話:</p><p><inputtype="text"name="telephone"></p></div><divclass="tableRow"><p>QQ:</p><p><inputtype="text"name="qq"></p></div><divclass="tableRow"><p>自我評(píng)價(jià)</p><p><textareaname="content"></textarea></p></div><divclass="tableRow"><p></p><p><inputtype="submit"value="提交"><inputtype="reset"value="重置">
</p></div></form>Ch4_2.php頁(yè)面的處理頁(yè)面//設(shè)置字符編header('Content-Type:text/html;charset=utf-8');if(!empty($_POST))
{//將表單中所有輸入字段保存到數(shù)組$fields中$fields=array('name','gender','birthday','address','telephone','qq','content','hobby');//$save_data為關(guān)聯(lián)數(shù)組,key為字段名,value為用戶輸入的字段值
foreach($fieldsas$v){ $save_data[$v]=isset($_POST[$v])?$_POST[$v]:'';}
……}……//復(fù)選框處理if(is_array($save_data['hobby'])){
//將數(shù)組轉(zhuǎn)換為用逗號(hào)分隔的字符串
$save_data['hobby']=implode(',',$save_data['hobby']);
}
//遍歷save_data數(shù)組,輸出用戶輸入的每個(gè)字段的值
foreach($save_dataas$key=>$value){ echo$key."=>".$value; echo"<br>";
}……implode()函數(shù)將一個(gè)一維數(shù)組的值轉(zhuǎn)化為字符串。運(yùn)行結(jié)果及數(shù)據(jù)包抓包分析任務(wù)1:用戶注冊(cè)頁(yè)面的實(shí)現(xiàn)新增一個(gè)PHP文件,實(shí)現(xiàn)用戶注冊(cè)的表單。設(shè)計(jì)思路:用戶注冊(cè)表單是為了收集用戶的基本信息,用戶名、密碼、性別、email、頭像、注冊(cè)時(shí)間、權(quán)限等。性別和權(quán)限字段在數(shù)據(jù)庫(kù)中用整數(shù)存儲(chǔ),需要設(shè)計(jì)合適的方式方便用戶選擇。用戶頭像提供系統(tǒng)中預(yù)先準(zhǔn)備好的頭像文件進(jìn)行選擇。用戶注冊(cè)頁(yè)面的與實(shí)現(xiàn)1)在DWCS6中打開(kāi)網(wǎng)站examples,在文件夾“chapter4”下添加一個(gè)新的文件夾“headimg”,文件夾用來(lái)存放用戶的頭像文件,頭像文件命名格式為“head序號(hào).jpg”,例如第1張頭像文件命名為“head1.jpg”。2)新建名為ch4_4.php文件3)編寫(xiě)ch4_4.php4)新建處理頁(yè)面ch4_4_ok.php文件5)編寫(xiě)ch4_4_ok.php用戶注冊(cè)頁(yè)面的部分代碼<p><inputtype="radio"name="gender"value="1"checked="checked">男<inputtype="radio"name="gender"value="2">女</p><p>請(qǐng)選擇頭像:</p><p><?php
for($i=1;$i<=20;$i++){ $headfile="head".$i.".jpg"; echo"<imgsrc='headimg/".$headfile."'width='50'height='50'/><inputtype='radio'name='head'value='".$headfile."'/>"; if($i%4==0)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025助教基金考試題及答案
- 2025證券業(yè)務(wù)營(yíng)銷(xiāo)試題及答案
- 2025公務(wù)員考試題機(jī)智題庫(kù)及答案
- 以實(shí)驗(yàn)為翼翱翔科學(xué)素養(yǎng)之空:初中化學(xué)教學(xué)新探索
- 中國(guó)期貨市場(chǎng)投機(jī)泡沫:理論剖析與實(shí)證洞察
- 不同消毒方法對(duì)石膏模型物理性能及消毒效果的對(duì)比探究
- Co和Fe基MOFs及其衍生物:制備、結(jié)構(gòu)與電催化性能的深度剖析
- 190例膽管癌患者臨床診療特征與療效的深度剖析
- 增材制造生產(chǎn)線項(xiàng)目資金申請(qǐng)報(bào)告
- 電線纜生產(chǎn)線項(xiàng)目立項(xiàng)報(bào)告(模板范文)
- 2025江蘇省鐵路集團(tuán)融發(fā)管理有限公司招聘7人筆試歷年參考題庫(kù)附帶答案詳解
- 應(yīng)急疏散培訓(xùn)課件
- 廣東省深圳市福田片區(qū)2025屆數(shù)學(xué)七上期末質(zhì)量檢測(cè)試題含解析
- 數(shù)學(xué)三年級(jí)測(cè)量活動(dòng)方案
- 靈芝孢子油培訓(xùn)
- DB32∕T 5081-2025 建筑防水工程技術(shù)規(guī)程
- 公司適用法律法規(guī)標(biāo)準(zhǔn)清單2025年08月更新
- 山西省2025年中考物理真題試卷真題及答案
- 2025年北京高考語(yǔ)文試卷試題真題及答案詳解(精校打印版)
- 窗簾實(shí)施方案(3篇)
- 產(chǎn)品試驗(yàn)管理制度
評(píng)論
0/150
提交評(píng)論