我想創建一個正則表達式客戶端驗證(也將發生服務器端驗證之前)防止SQL /腳本注入即類似的東西 - 其中不工作正則表達式阻止sql /腳本注入
(script)|(<)|(>)|(%3c)|(%3e)|(SELECT) |(UPDATE) |(INSERT) |(DELETE)|(GRANT) |(REVOKE)|(UNION)|(&lt;)|(&gt;)
,這是什麼(以上)的表達,所以我可以得到它的工作正確的格式?
例如我的電子郵件檢查是這樣
(/^[^\\W][a-zA-Z0-9\\_\\-\\.]+([a-zA-Z0-9\\_\\-\\.]+)*\\@[a-zA-Z0-9_]+(\\.[a-zA-Z0-9_]+)*\\.[a-zA-Z]{2,4}$/))
哦,如果你能想到什麼要補充,請「吶喊」。
,而不是試圖驗證輸入,只需確保在字符串中的特殊字符進行轉義。 – brain
爲什麼哦爲什麼?在服務器端代碼中使用適當的轉義設施來轉義SQL參數,以及要插入到HTML或其他地方的文本。防止任何注射可能性,並消除任何「注射預防檢查」的需要。 – Qtax
它允許用戶添加其中包含SQL文本的文章等。考慮一下,你最終可能會在以後重用這段代碼。 – ewanm89