2010-12-19 33 views
-1

Helllo朋友允許用戶存儲在那裏data.now當我存儲數據笏所有關心我必須讓我的任何錯誤值不插入。或它沒有被黑客入侵表單數據

+1

你必須給我們更多關於你想要做什麼的細節。我知道你有一個表單,並希望在發佈數據之前對其進行處理,但是我不知道你想要做什麼。 – 2010-12-19 12:56:43

+0

您需要添加一些關於「錯誤值」組成的詳細信息以及存儲數據的位置。 – 2010-12-19 12:57:03

+1

你應該把它分成兩個單獨的問題。 「獲取你想要的數據」和「避免安全問題」是不同的問題。 (後者,BTW,雖然已經有很多重複,但是,搜索一下)。 – Quentin 2010-12-19 12:59:02

回答

2

你在問什麼叫做輸入驗證,並且有關於它的a lot of information

主要存在兩個部分:

  1. 確保用戶放在一些有用的東西。
  2. 確保用戶沒有放入有害東西。

前者通常是通過JavaScript在客戶端完成的(爲了獲得更平滑的用戶體驗和更少的回傳)。它應該重新在服務器端完成,以確保,因爲你永遠不應該信任用戶的輸入。基本上它涉及像正則表達式檢查電子郵件地址的格式,枚舉檢查下拉列表的值等東西。

後者必須完成服務器端,因爲您應該永遠不會相信用戶輸入。它涉及針對SQL注入攻擊的字符串轉義,針對緩衝區溢出攻擊的字段長度驗證(這些日子較少見)等。

+0

其實際的衛生處理。 – RobertPitt 2010-12-19 13:04:54

2

首先,您需要了解大約2種安全手段。所以,當你刪除任何不必要的驗證缺陷後驗證數據

  • 衛生
  • 驗證

衛生是清潔的數據。

衛生包括刪除字符,如不可見的字符(空格,製表符,新行......),他們應該全面完成。

驗證後,您的數據,如if(strlen($_GET['key']) > 0),你會被插入數據到數據庫,但這樣做的方式取決於數據庫類型

PHP提供的功能,以逃避如mysql_real_espae_string()

數據

此方法被稱爲數據庫轉義。

+0

這真的幫了我很大的忙。我會在這方面做更多的研究。我只是在我的NAME字段中插入類似下面的文字。 。當我點擊提交時,它回顯我「你好」的消息..N同樣的東西存儲在mysql數據庫 – 2010-12-19 13:07:58

+0

你永遠不應該改變數據從用戶插入到數據庫,你應該永遠保持原始的,除了在數據上執行mysql_real_escape_string。然後根據您使用數據的界面(如html頁面),在將數據顯示給用戶之前,您將轉義數據。這樣您仍然可以打開其他接口來處理數據,因爲有時輸入「

  • 11. 表單數據上提交
  • 12. PhoneGap/JQuery Mobile表單數據
  • 13. jQuery POST表單數據
  • 14. URLScan - 過濾表單數據
  • 15. 處理表單數據
  • 16. JSOUP:設置表單數據
  • 17. Cakephp 1.3表單數據
  • 18. 從表單導入數據?
  • 19. 格式化表單數據?
  • 20. 數據表單柱篩選
  • 21. Views.py處理表單數據
  • 22. Activiti表單數據類型?
  • 23. 提交表單數據?
  • 24. 捕獲jQuery表單數據
  • 25. jquery獲取表單數據
  • 26. Orbeon:編輯表單數據
  • 27. Javascript刪除表單數據
  • 28. 數據綁定到表單
  • 29. ENCTYPE多重表單數據
  • 30. 注入數據Spring表單