Re: [請益] php 發生 隱碼問題

看板PHP作者 (隱者)時間19年前 (2006/04/06 13:42), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串3/10 (看更多)
※ 引述《ckmarkhsu (深藍站長)》之銘言: : php 也有此風險 : 例如 SELECT userid FROM user WHERE username = $usernmae : 如果傳近來的值是 '' OR 1=1 : 那就會出錯啦:P : ※ 引述《justinC (無)》之銘言: : : 像asp 很容易發生這類問題 : : 大多查到資料都是asp的 : : 雖然php 的預設都有把特殊字元slash掉 : : 難道就不會發生問題嗎?有php相關資料嗎 用prepared statement, 大部分會escape掉 (ex. PEAR::DB的prepare&execute或mysql本身的prepared statement) 瘋狂地檢查值域不對就退回 至少要有長度與字元集合的範圍檢查 只要是使用者端有辦法送字串過來的地方都check (好像有一點偏執狂xd) function id_checker($id) { $id = trim($id); if( regex_checker("/^([a-z][a-z\d]+)$/i", $id) && length_checker(6, 10, $id) ) return true; return false; } function passwd_checker($passwd){ $passwd = trim($passwd); if( regex_checker("/^([a-z\d]+)$/i", $passwd) && length_checker(4, 12, $passwd) ) return true; return false; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.26.34.20

04/06 14:04, , 1F
http://0rz.net/b91eF 找sourceforge拿解答 :p
04/06 14:04, 1F
文章代碼(AID): #14DAfMfR (PHP)
討論串 (同標題文章)
文章代碼(AID): #14DAfMfR (PHP)