第六章.php與web頁面交互

php與web頁面交互

這一章,主要是說表單,表單是web編程中不可缺少的重要元素,一般作爲收集用戶提交的數據,表單程序的運作原理是,在客戶端通過表單提交數據,將數據提交給web服務器的腳本程序,在腳本程序中完成對數據的處理。

創建表單
獲取表單提交的數據
獲取超鏈接傳遞的數據
瞭解javascript腳本


 一、web表單的功能是讓瀏覽者和網站有一個互動的平臺,主要用來在網頁中發送數據到服務器。

 創建表單,表單使用<form></form>標籤來創建並定義表單的開始和結束位置,中間包含多個元素,表單結構,

 表單由表單元素組成,常用的表單元素有以下幾種標記:輸入域標記<input>,選擇域標記<select>和<option>,文本域標記<textarea>等
 
 1.輸入域標記<input>是表單中最常用的標記之一,常用的文本域,按鈕,單選按鈕,複選框等構成完整表單。
 2.選擇域標記<select><option> 可以建立一個列表或者菜單
 3.文本域標記  用來製作多行的文本域,可以在其中輸入更多的文本

 定義表單的數據提交方法: 表單數據的提交方法有兩種,即post和get方法,設置表單提交數據的方法非常簡單,只需設置<form>表單中的method屬性值即可。
 
post方法不依賴於URL,不會將傳遞的參數值顯示在地址欄中。另外post方法可以沒有限制地傳遞數據到服務器,所有提交的信息在後臺傳輸,用戶在瀏覽器端是看不到這一過程的,安全性高,所以適合用於發送一個保密或者大量的數據到服務器。
get方法提交的表單數據被附加到URL上,並作爲url的一部分發送到服務器端,在程序的開發過程中,由於get方法提交的數據是附加到URL上發送的,因此,在URL的地址欄中將會顯示“url+用戶傳遞的參數”,若要使用get方法發送表單,url長度應限制在1MB字符內,如果發送的數據量太大,數據將被截斷,從而導致意外或失敗的處理結果。
例 http://url?name1=value1&name2=value2...   url爲響應地址,name1爲表單元素名稱,value1爲表單元素的值. url和表單元素之間用?隔開,而多表單元素之間用&隔開,每個表單元素格式都是name=value

 
 2.獲取表單提交的數據

$_GET['name']
$_POST['name']
    這兩個全局變量可以獲取表單的值,但要注意的是,獲取表單元素名字是區分大小寫的。form標籤中所有表單元素都具備name屬性,即爲表單元素的名稱,在使用時需要使用name屬性來獲取相應的value屬性值。所以添加的所有控件必須定義其name屬性值。

  3.獲取超鏈接傳遞的數據
通過程超鏈接傳遞數據在程序開發中較爲常用,它可以代替按鈕來實現某種功能。定義超鏈接傳遞數據,接收超鏈接傳遞的數據,以及對超鏈接傳遞的數據進行編碼和解碼。

1.通過超鏈接接收傳遞數據,定義超鏈接使用<a>標記,語法:<a href=URL name=name target=target>鏈接文字</a>
  href屬性:指定所鏈接文件的URL路徑,這個路徑可以是相對路徑,也可以是絕對路徑
  name屬性:指定頁面的錨點名稱,如果需要鏈接到對應的錨點位置,需要在錨點名稱前添加一個#字符
  target屬性:指定要打開的鏈接所使用的瀏覽器窗口名稱,可以使用自定義的窗口名稱,也可以使用其它四個,_self,_blank,_parent,_top
2.通過$_GET[] 獲取超鏈接傳遞的數據
3.對超鏈接傳遞的數據進行編碼,解碼
url編碼是一種瀏覽器用來打包表單輸入數據的格式,是對用地址欄傳遞參數進行的一種編碼規則,例如,在參數中帶空格,會出錯,而用url編碼過以後,空格轉換成%20,這樣就不會報錯了,對中文進行編碼也是同樣的情況,最主要的一點就是它可以對url傳遞的參數進行編碼。
php中對字符串進行url編碼使用urlencode()函數,語法:urlencode(str)  這樣就實現將字符串str進行url編碼

解碼,urldecode(str)  這樣就可對應用$_GET[]方法獲取的字符串進行解碼


 二、JavaScript腳本

javascript腳本語言與其它語言一樣,有其自身的基本數據類型,表達式和運算符以及程序的基本構架結構。
1.javascript能做什麼,它是一種比較流行的製作網頁特效的腳本語言,它由客戶端瀏覽器解釋執行,
2.javascript數據類型,字符串,數值,布爾,對象,null值(可以通過給一個變量賦null來清除變量的內容),undefined(表示該變量尚未被賦值)
3.javascript變量, 變量是指程序中一個已經命名的存儲單元,它的主要作用就是爲數據操作提供存放信息的容器,對於變量的使用首先必須明確變量的命名規則,變量的聲明與賦值。
  1.命名規則,
1.必須以字母或下劃線開頭,中間可以是數字,字母或下劃線,
  2.變量名不能包含空格或加號,減號等符號
  3.javascript的變量名是嚴格區分大小寫的,
  4、不能使用javascript中的關鍵字
  2.變量的聲明與賦值
在javascript中,一般在使用變量前需要先聲明變量,不過有時變量可以不先聲明,使用時在根據變量的實際作用來確定其所屬的數據類型,所有的javascript變量都由關鍵字var聲明。語法格式:var variable, 在聲明變量的同時也可以對變量進行賦值:var variable=9;
建議:在使用變量前就對其聲明,因爲聲明變量的最大好處就是能及時發現代碼中的錯誤,由於javascript是採用動太編譯的,而動態編譯不易於發現代碼中的錯誤,特別是變量命名方面的錯誤。
聲明變量時所遵守的規則如下:
可以使用一個關鍵字var同時聲明多個變量,如: var m,n;
可以在聲明變量的同時對其賦值,即爲初始化,如: var m=1;n=100;
如果只是聲明瞭變量,並未對其賦值,則默認值爲undefined
在javascript中,可以使用分號代表一個語句的結束,如果每個語句都在不同的行中,那麼分號可以省略,如果在同一行,分號就不能省略
4.javascript註釋
兩種方法:單行註釋:// ,多行註釋:/*...*/
  另外javascript還能識別html註釋的開始部分<!__,會把它看作是單行註釋結束,像使用//一樣,但是它不能識別html註釋的-->部分
 
5.通過javascript腳本自定義函數,用戶使用自定義函數必須事先聲明,不能直接使用未聲明的自定義函數,
function 函數名(參數){
return var;
}

同一個頁面中不能定義相同名稱的函數,另外,當用戶自定義函數後,需要對該函數進行引用,否則自定義函數將失去意義。
6、javascript腳本嵌入方式,  
1.嵌入到html文件中
javascript作爲一種腳本語言,可以嵌入到html文件中,在html中嵌入javascript的方法是使用<script language="javascript">   ... </script>  其中通過language屬性可以設置腳本語言名稱和版本。

javascript腳本通常定在<head>..<head>標記和<body>...<body>標記之間,寫在<head>標記中間的一般是函數和事件處理函數,寫在<body>標記中間的是網頁內容或調用函數的程序塊。

在html中可以通過javascript: 可以調用javascript的方法,

2.應用javascript事件調用自定義函數
3.在php動態網頁中引用js文件
在網頁中除了<script>..</script>標記之間編寫javascript腳本代碼外,還可以通過<script>標記中的src屬性指定外部的javascript文件(即js文件,以.js爲擴展名)的路徑,從而引用對應的js文件。 src屬性不但可以調用同一個服務器上的js文件,還可以通過指定路徑來調用其它服務器上的js文件。

注意事項:1.在js文件中,只能包含javascript腳本代碼,不能包含<script>標記和html代碼
 2.在引用js文件的<script>與</script>標記之間不應存在其他javascript代碼,即使存在,瀏覽器也會忽略此腳本代碼,只執行js文件中的代碼。

4.解決瀏覽器不支持javascript問題
1.開啓ie瀏覽器對javascript的支持
2.開啓ie瀏覽器對本地javascript的支持
3.應用註釋符號驗證瀏覽器是否支持javascript腳本功能
4,應用<noscript>標記驗證瀏覽器是否支持javascript腳本,如果支持則忽略<script>..</noscript>之間的內容。

7.javaScript常用事件
參考書籍


複習:

1、創建表單
2、添加表單元素
3、表單提交方法
4、獲取表單提交的數據
5,獲取超鏈接傳遞的數據
6、獲取超鏈接傳遞的數據
7、對超鏈接傳遞的數據進行編碼,解碼
8、javascript是什麼
9、javascript類型,變量,自定義函數
10、javascript腳本嵌入方式,
11、應用javascript事件調用自定義函數
12、在php動態網頁中引用js文件
13、解決瀏覽器不支持javascript問題


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章