2012-07-14 4 views
0

현재 사용자가 스레드에 답장 할 때 사용합니다. $id = $_GET['id']을 사용하고 응답 양식에 숨겨진 읽기 전용 입력에 변수를 전달합니다.사용자가 HTML을 변조하는 것을 방지합니다.

내가 사용하는 또 다른 방법은 내가 jQuery를 함께 검색 한 후 아약스와 양식을 제출 데이터 속성입니다. 방화 광에서 데이터 속성을 변경할 수 있습니다.

HTML 숨겨진 필드/데이터 속성을 방지하기위한 좋은 방법은 무엇입니까? ? page1.php ID = 1, page2.php page3.php, ID = 3 ID = 2 :

나는 사용자가 여러 창을 열 경우 sessions..For 예를 사용하는 방법에 대한 생각했다. 어떻게 저장하고 세션을 검색합니까? 여러 개의 창이 열려있는 최종 세션 이름을 가질 수 없습니다.

+0

, 당신은 $ ID = $ theread_id를 사용; – elo

+1

요청 조작을 막을 수는 없으므로 대신 서버 측의 유효성을 검사하고 $ _GET [ 'id']의 모든 값이 허용되는 범위 내에 있는지 확인해야합니다. 예를 들어 요청간에 값을 저장해야하는 경우 세션에 의지하십시오. – Mahn

답변

1

은 분명히 당신이 (당신이 어렵지만 불가능 할 수 있음) HTML 클라이언트 측 변경에서 사용자를 막을 수 없습니다. 회신 할 수있는 권한이없는 스레드에 회신하는 사람들이 걱정된다면 서버 측 (게시하기 전에 사용 권한 확인)을 처리해야합니다. 그렇게하면 사용자가 원하는대로 ID를 변경할 수 있지만 응답 할 수있는 스레드에만 응답 할 수 있습니다.

또 다른 옵션은 쿼리 문자열에 암호화 된 ID를 사용할 수 있지만,이 경우에 나는 아직도 권한 서버 측을 확인합니다. 사용자가 therd에 응답 할 때

관련 문제