我有一個tcl變量$值正在通過隱藏的輸入字段傳遞。 什麼是一個很好的正則表達式來檢查SQL注入。tcl變量SQL注入檢查
我希望它只允許在大小寫的情況下。
我希望它只允許在另一種情況下的字符。
而在另一種情況下的數字和字符。
在所有3種情況下,我不希望被列入
我有一個tcl變量$值正在通過隱藏的輸入字段傳遞。 什麼是一個很好的正則表達式來檢查SQL注入。tcl變量SQL注入檢查
我希望它只允許在大小寫的情況下。
我希望它只允許在另一種情況下的字符。
而在另一種情況下的數字和字符。
在所有3種情況下,我不希望被列入
switch $case {
case1 {set regex {^[[:digit:]]+$}}
case2 {set regex {^[[:alpha:]]+$}}
case3 {set regex {^[[:alnum:][:space:]]+$}}
default {error "what case is this?"}
}
if {! [regexp $regex $value]} {
error "invalid value: value"
}
任何特殊chracters要刪除不匹配的字符
switch $case {
case1 {set regex {\D}}
case2 {set regex {[^[:alpha:]]}}
case3 {set regex {[^[:alnum:][:space:]]}}
}
set safe_value [regsub -all $regex $value ""]
一般而言,建議您使用參數化的SQL語句,而不是將字符串替換爲SQL代碼;讓尷尬的案例變得更加容易。 –
嗨Donal ..你可以給我一個使用TCL/Informix的參數化SQL語句的例子嗎? – Micheal