認(rèn)識查詢字符串
在網(wǎng)站建設(shè)中查詢字符串由一個(gè)或多個(gè)“名/值”對的字符串組成,多個(gè)“名/值”對之間通過特殊字符(&)連接在一起,構(gòu)成一長串的字符串,常被用來傳遞一些簡單的參數(shù)。其語法格式如下:
name1=value1&name2=value2&...&namen=valuen
其中name1=value1就表示一個(gè)“名/值”對。在所有參數(shù)中,name表示查詢字符串的參數(shù)名稱,而value表示查詢字符串的參數(shù)值。指定其中參數(shù)的名稱就可以獲取該參數(shù)的值。
查詢字符串附加在URL后面,存儲在HTTP請求的頭部區(qū)域,因此所傳輸?shù)臄?shù)據(jù)結(jié)構(gòu)就比較簡單,不能夠存儲大容量的信息,一般能夠發(fā)送最大數(shù)量約為2000個(gè)字符,作為查詢字符串的一部分發(fā)送的、超過這個(gè)數(shù)目的其他數(shù)據(jù)將不會被處理。
查詢字符串與URL通過問號(?)連接在一起。這樣PHP腳本就能夠準(zhǔn)確獲取查詢字符串的內(nèi)容,而URL也能夠正確定位到指定目標(biāo)。例如:
<a href="detail.php?id=1&class=3&subclass=24&key=li">顯示查詢信息</a>
上面的超鏈接中就提供了4個(gè)參數(shù),de-tail.php頁面通過這4個(gè)參數(shù)可以在數(shù)據(jù)庫中查詢到指定信息的記錄。
查詢字符串中的參數(shù)可以同名,但HTTP請求仍然能夠把所有參數(shù)傳遞出去,不管這些參數(shù)名是否重復(fù)。例如:
<a href="detail.php?id=1&class=3&subclass=24&key=li& id=3&class=2&subclass=21&key=wang ">顯示查詢信息</a>