내가 쿼리하고 있어요 : 기능을 동일하게 유지하면서SQL 삽입을 피하는 방법은 무엇입니까?
@results = RubyGem.where(
'name LIKE ?', "%#{searchphrase}%"
).paginate(
:page => params[:page],
:per_page => 50,
:group => "name",
:order => [
"CASE WHEN name like '#{searchphrase}%' THEN 0
WHEN name like '% %#{searchphrase}% %' THEN 1
WHEN name like '%#{searchphrase}' THEN 2
ELSE 3 END, name"
]
)
을하지만이 주사에 취약 확신 ... 누군가가, 그렇지 그래서이 문제를 해결할 수 있을까요? Ruby on Rails와 MySQL을 사용하고 있습니다.
비슷한 질문 : http://stackoverflow.com/questions/12127496/is-this-prone-to-sql-injection이 작동하지 않습니다 –