程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php5與mysql5 web 開發技術詳解-6 表單-處理用戶輸入

php5與mysql5 web 開發技術詳解-6 表單-處理用戶輸入

編輯:關於PHP編程

創建和處理表單是web開發者的一個重要能力指標,本章梳理下重點。 1、GET和POST的區別       GET方法不支持ASCII字符之外的任何字符,需要編碼操作(url_encode(),url_decode()),有的浏覽器可自動完成。 2、表單元素      常用的十幾個牢記即可,暫不表述。         3、檢查提交來源       來源: $ref =  $_SERVER['HTTP_REFERER']       服務器地址: $srv  =  {$_SERVER['SERVER_NAME']}  {$_SERVER['PHP_SELF']}         if( strcmp($ref ,$srv) == 0  )  安全   4、多頁面傳遞數據      三種方案:          表單隱含元素          數據保存在session           數據保存在數據庫   5、驗證表單數據       不要指望用戶按我們的意願輸入數據,需要我們在客戶端和服務器端驗證。       避免表單重復提交幾個方案:    (1) 客戶端js             (2)cookie              (3)session              (4)header()函數轉向        表單過期的處理(避免錯誤提交後返回頁面數據丟失)   6、表單安全       預防XSS攻擊:www.2cto.com           htmlspecialchars()    先對 ‘  “  <   >   &  做html編碼           htmlentitles()  轉換任意的html超文本實體,主要是過濾輸出(過濾js腳步標簽)            strip_tags() 去除任何的html代碼           每當權限級別變化時,用 session_regenerate_id ()  改變sessionid 。        預防sql 注入:            mysql_escape_sstring()            mysql_real_escape_sstring() 7、開發安全的代碼       用戶輸入驗證       高級驗證 ctype       數據過濾 - pecl  filter擴展       input_get()       文件路徑檢測       魔法引用 magic_quote_gpc  ,不提倡該法

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved