2011-11-19 1 views
0

내가 코딩하는 웹 사이트에는 인쇄 할 수없는 모든 문자를 차단하는 기능이 적용되어 있습니다. http://pastebin.com/FemaR8s0 < 이것은 우리가 가지고있는 버전입니다. 이것은 하이픈과 공백이 이름 필드에 허용되는 것을 방지하고 이름 필드에 하이픈을 허용하는 함수를 수정하는 방법이 있는지 궁금합니다. 물론 데이터베이스에서 이름을 변경하면 작동하지만 사이트에 로그인하거나 이름을 사용하면 안됩니다 ... 도움이 될 것입니다!함수 RemoveXSS - 하이픈이나 공백을 허용하도록 조정할 수 있습니까?

+0

귀하의 질문이 너무 광범위합니다. Btw, 그 직업에 대한 최고의 기능이 아니야. 또한 이름 필드를 정리하기위한 것이 아닙니다. 또한 공백이나 하이픈을 제거하지 않습니다. 'print removeXSS ("name -field");'name -field'를 출력합니다. 그래서 최소한 당신은 이름 필드를 의미하는 것을 다시 설명해야 할 것입니다. – mario

답변

0

손으로 만든 XSS/SQL 주입 필터 사용을 중지하십시오. 이 기능은 일어날 수있는 사고입니다. HTML Purifier으로 바꾸면보다 안전하고 적절한 하이픈/공백 사용이 잘됩니다.

+0

필자는이 기능을 사용하지 않았지만 이전에는 사이트에서 일하는 스크립터 였지만 실제로는 atm이 아니기 때문에 약간의 손실이있었습니다. 무엇에 관해서는 더 좋을 것이고 나는 분명히 청정기를 조사 할 것이다. 덕분에 너무 애석하고 너무 애매한 것에 대해 유감스럽게 생각합니다. 단지 그 기능이 등장 인물을 방해 할 수있는 유일한 것으로 보였습니다 ... – Elizabeth

+0

@ user1054798 당신이 쓰지 않았 음을 이해합니다. 지뢰밭에 넣는다. 나는 광산 중 하나를 지적하고 그 광산을 돌아 다니는 방법을 지적했다. –

+0

HTML 청정기에 대한 정보를 제공해 주셔서 감사합니다. 확실히 사이트 소유자와 함께 가져와야합니다. D 또한 방금 다른 코드를 확인한 후 $ trim (strip_tags) 함수가 있는데, 이것이 허용되지 않는 것으로 가정합니다 하이픈 등? HTML 정제기 웹 사이트는 strip 태그를 사용하지 말라고 말하지만, 어떻게 대체 할 것인가? 나는 정말로이 모든 질문에 대해 유감스럽게 생각한다. 그리고 그것이 정말로 분명해야한다면, 나는 내가 비교적 무언가를 전혀 모르는 한 단지 잠정이다 ... 지금까지 모든 도움을 주셔서 감사합니다! – Elizabeth