如何進(jìn)行PHP開發(fā)中表單的處理

這篇文章將為大家詳細(xì)講解有關(guān)如何進(jìn)行PHP開發(fā)中表單的處理,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

堅(jiān)守“ 做人真誠 · 做事靠譜 · 口碑至上 · 高效敬業(yè) ”的價(jià)值觀,專業(yè)網(wǎng)站建設(shè)服務(wù)10余年為成都成都葡萄架小微創(chuàng)業(yè)公司專業(yè)提供企業(yè)網(wǎng)站制作營銷網(wǎng)站建設(shè)商城網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)小程序網(wǎng)站建設(shè)網(wǎng)站改版,從內(nèi)容策劃、視覺設(shè)計(jì)、底層架構(gòu)、網(wǎng)頁布局、功能開發(fā)迭代于一體的高端網(wǎng)站建設(shè)服務(wù)。

我終究還是低估了“妹子”兩個(gè)字對程序猿們的殺傷力,在無圖說個(gè)杰寶的今天,竟然還能在沒有爆照的情況下點(diǎn)擊量一天不到就到達(dá)了四位數(shù),并且還成為當(dāng)天評論最多的帖子!雖然評論都歪樓歪得不行了,但是妹子還是非常貼心地對我說了一句妹子在此表示很關(guān)注內(nèi)容??吹竭@句話,我頓時(shí)生出一種拋卻此身為君死的知遇之情,不知道我以身相許妹子能樂意不?

這么多人看到這一系列,我還是應(yīng)該秉承技術(shù)博客的宗旨,盡量以講技術(shù)為主,跟廣大入門者一起探討PHP開發(fā)的知識。不過呢,為了照顧廣大因?yàn)闃?biāo)題點(diǎn)擊近來的程序猿們,我會在博客中增加一些妹子在學(xué)習(xí)過程中表現(xiàn)的敘述,并且傳授大家如何跟妹子培養(yǎng)感情,哦,不,是進(jìn)行學(xué)術(shù)交流。

既然是教妹子web開發(fā),尤其是在幾乎零基礎(chǔ)的情況下,就必須要從非?;镜臇|西講起,有足夠的耐心。但是也要有嚴(yán)格的教學(xué)思路,不能想到什么就說什么,這樣妹子聽了不但會覺得煩,而且學(xué)習(xí)效率也不高。你想想,妹子煩了,學(xué)習(xí)的勁頭上不去,后面還能有你的什么事呢?你還沒來得及展示你的知識深度和豐富開發(fā)經(jīng)驗(yàn)?zāi)?,妹子就已?jīng)把電腦一關(guān)棄你而去了,然后,還能有什么然后呢?!總結(jié)一句:沒方法沒思路沒耐心,注定孤獨(dú)一生。

在前一篇,已經(jīng)基本介紹了一些東西,可以概括為以下幾點(diǎn):1)php代碼要用<?php ?>標(biāo)簽進(jìn)行標(biāo)識(2)如何使用echo語句進(jìn)行輸出html代碼,另外關(guān)于要用對""中的"(雙引號)用\(轉(zhuǎn)義符)進(jìn)行轉(zhuǎn)義。(3)php代碼是如何跟html代碼進(jìn)行混合的。那么,在這個(gè)基礎(chǔ)上,下一步就是如何提交表單以及所提交表單的處理。

第三步:提交表單

在html語法中,我們會用<form>標(biāo)簽進(jìn)行表單的標(biāo)識,在百度百科中,我們可以知道&mdash;&mdash;表單在網(wǎng)頁中主要負(fù)責(zé)數(shù)據(jù)采集功能。也就是說,表單為系統(tǒng)提供了提交數(shù)據(jù)的功能。那么,我們再來重溫一下之前寫的那幾行代碼,重點(diǎn)關(guān)注表單部分的內(nèi)容。

<?php         //php代碼部分開始  echo "<html>";  echo "<head>";  echo "<meta charset=\"gbk\">";  echo "<title>用戶登錄界面</title>";  ?><!--  php代碼部分結(jié)束--> </head> <body> <form name="login" action="Controller.php" method="post" >  <!-- 上一行代碼的意思是 -->  <!-- name="login"表單的名稱為login,提交的動作為“Controller.php”,請求方式為“post” -->      <td class="tbl">用戶名:</td><td><input type="text" name="user_id"></td>    <!-- name="user_id"的意思是所填寫的用戶名標(biāo)識為user_id -->          <td class="tbl">密碼:</td><td><input type="text" name="user_password"></td>  <!-- name="user_password"的意思是所填寫的密碼標(biāo)識為user_password --> <?php      echo "<td><input type=\"submit\" value=\"登入系統(tǒng)\"></td>"    //submit表示的是表單的提交按鈕,按鈕顯示為“登入系統(tǒng)”  ?> </form> </body> </html>

看到上面這幾行代碼跟注釋,有人可能會覺得:這也太簡單了吧。在一開始我就說過了,教妹子學(xué)技術(shù)的關(guān)鍵在于要有耐心,如果妹子什么都會了,還要你干嘛?在這里,重點(diǎn)要給妹子解釋一下的就是action="Controller.php",意思就是點(diǎn)擊submit提交按鈕后,頁面會跳轉(zhuǎn)到Controller.php這個(gè)文件,換句話來說&mdash;&mdash;妹子,表單提交,就是把數(shù)據(jù)提交到Conroller.php上,由它來處理數(shù)據(jù)嘛。(這樣的解釋可能有失偏頗,但是為了讓妹子更好的理解,這也是權(quán)宜之計(jì),效果不錯(cuò)的喲)

第四步:獲取和處理所提交表單的數(shù)據(jù)

既然提交了表單,那么下一步肯定是如何獲取和處理表單中里的數(shù)據(jù)。如果你這個(gè)時(shí)候給妹子講POST請求和HTTP協(xié)議,妹子除了暈頭轉(zhuǎn)向并且給你兩個(gè)白眼,估計(jì)你啥效果都得不到。你可能會說,樓主你這樣的教學(xué)方式很不科學(xué)很不全面啊。是不是科學(xué)是不是全面我暫且不跟你爭論,有的時(shí)候講的細(xì)講的多不代表對學(xué)的人就好,能把教學(xué)過程進(jìn)行下去才是最重要的。

廢話少說,我們直接看Controller.php的代碼,在注釋的幫助給妹子解釋,PHP是如何獲取HTML表單數(shù)據(jù)的。

<?php session_start();//使用session前必須調(diào)用該函數(shù)   $user_id =$_POST['user_id'];//聲明變量$user_id,把POST請求中的user_id的值賦給它  $user_password= $_POST['user_password'];  //聲明變量$user_password,把POST請求中的user_password的值賦給它   //.操作符連接兩個(gè)字符串變量,以下兩條語句顯示所提交表單的用戶名和密碼  echo "所提交表單的用戶名是:".$user_id;  echo "   密碼是".$user_password;  ?>

看到開頭的***句:session_start();和緊接著的注釋,妹子肯定會問&mdash;&mdash;什么是session啊?session,通俗的來講,就是用戶從進(jìn)入網(wǎng)站開始到關(guān)閉瀏覽器結(jié)束的這個(gè)過程。而在PHP中使用session,就是通過注冊若干session全局變量,在不同的頁面或php文件中使用這些變量。妹子肯定沒有辦法一下子就明白session到底是怎么回事,當(dāng)前只要讓她暫時(shí)知道有這么一回事就行了,在往后的學(xué)習(xí)當(dāng)中會逐漸加深對其的理解。

繼續(xù)看到代碼,對照第三步的代碼我們會知道,提交表單的方式是POST,所以我們用$_POST變量來獲取表單中的數(shù)據(jù)。而中括號[' ']內(nèi)的索引為表單中的name,通過索引來獲取數(shù)組$_POST中的值,***顯示在頁面上。

把數(shù)據(jù)顯示到頁面上,固然是一種“處理”的方式。可是既然是登錄功能,那所輸入的用戶名和密碼一般來說都必須與系統(tǒng)中的設(shè)定吻合。例如系統(tǒng)中只有一個(gè)用戶名是admin,密碼是123456,那么在輸入除admin之外的用戶名都應(yīng)該是被拒絕登錄的,而密碼也應(yīng)該與admin所對應(yīng),必須是123456。判斷代碼如下:

<?php  session_start();//使用session前必須調(diào)用該函數(shù)   $user_id =$_POST['user_id'];//聲明變量$user_id,把POST請求中的user_id的值賦給它  $user_password= $_POST['user_password'];  //聲明變量$user_password,把POST請求中的user_password的值賦給它   //.操作符連接兩個(gè)字符串變量,以下兩條語句顯示所提交表單的用戶名和密碼  if($user_id=='admin'&&$user_password=='123456')//判斷語句,&&為且運(yùn)算符,必須兩條件均符合才為真  {      echo "通過驗(yàn)證,登錄成功";  }  else       echo "未通過驗(yàn)證,登錄失敗";  ?>

妹子很努力,上午我問她對數(shù)據(jù)庫的基本操作是不是熟悉,晚上我問她在干什么的時(shí)候,她說:在惡補(bǔ)數(shù)據(jù)庫呢。這時(shí)候,我的心里不知道多感動,本來上了一天班挺累的頓時(shí)疲勞盡消趕緊坐到電腦前碼字。

為什么我要讓她復(fù)習(xí)數(shù)據(jù)庫呢?因?yàn)槲覀兊南到y(tǒng)不大可能只有一個(gè)賬號,更不可能把所有的賬號和密碼都寫進(jìn)PHP文件中。我們要做的是,把這些信息存進(jìn)數(shù)據(jù)庫里,到需要用的時(shí)候就拿出來。什么時(shí)候需要用呢?當(dāng)然是登錄需要驗(yàn)證的時(shí)候,也就是現(xiàn)在。

第五步:連接MySQL數(shù)據(jù)庫

PHP提供了完成的操作MySQL數(shù)據(jù)庫的函數(shù),這些函數(shù)提供了從連接數(shù)據(jù)庫、執(zhí)行SQL語句、處理數(shù)據(jù)結(jié)果集到關(guān)閉數(shù)據(jù)庫等方方面面的功能。妹子可以用通過這些函數(shù)使得基于MySQL數(shù)據(jù)庫的Web開發(fā)變得高效而且簡單。

那么,我們就從最基本的連接數(shù)據(jù)庫開始。請看代碼:

<?php    $host ='localhost';//定義數(shù)據(jù)庫服務(wù)器,為本地主機(jī)    $user_name='root'; //定義數(shù)據(jù)庫的用戶名    $password ='';     //定義數(shù)據(jù)庫的密碼     $conn = mysql_connect($host,$user_name,$password);//連接MySQL,獲取鏈接    if(!$conn){//判斷鏈接是否為空      die('數(shù)據(jù)庫連接失?。?#39;.mysql_error());      //使用了語言結(jié)構(gòu)die(),它的功能類似于exit,輸出一段信息不能并立即中斷程序的執(zhí)行    }    else{        echo "數(shù)據(jù)庫連接成功";    }

在這里,我假定妹子知道什么是服務(wù)器、用戶名和密碼(心理活動:妹子說惡補(bǔ)了一個(gè)晚上,該不會連這個(gè)都不知道吧,心驚膽戰(zhàn)ing)。關(guān)鍵的語句其實(shí)就只有一句,

$conn = mysql_connect($host,$user_name,$password);$host(服務(wù)器)、$user_name(用戶名)和$password(密碼)作為參數(shù),通過mysql_connect函數(shù)獲取mysql數(shù)據(jù)庫的鏈接,并賦給變量$conn。

關(guān)于如何進(jìn)行PHP開發(fā)中表單的處理就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

分享文章:如何進(jìn)行PHP開發(fā)中表單的處理
網(wǎng)頁網(wǎng)址:http://muchs.cn/article36/ihjipg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司域名注冊、ChatGPTApp開發(fā)、虛擬主機(jī)、網(wǎng)站營銷

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司