2013-01-22 3 views
0

나는 웹 사이트에서 많은 인용문을 사용하고 있으며 사용자가 각 인용문에 대해 좋아요 또는 다른 투표를 할 수 있기를 원합니다. 문제는 쿠키에 투표 된 정보를 저장하면 4kb 제한이 있으며 100 인용에 투표하는 방문자가있는 경우 쿠키 제한을 초과 할 수 있다는 것입니다.ASP.NET에서 투표하는 데 사용할 수있는 방법

로그인하지 않은 사용자의 투표 정보를 저장하는 가장 좋은 방법은 무엇입니까?

투표는 데이터베이스에도 저장되지만 사용자 정보는 저장되지 않습니다. 로그인 한 사용자 만 각 투표에 대한 정보를 저장했습니다.

+0

익명 연결을 만들면 각 사용자의 투표가있는 쿠키가 데이터베이스에 생성됩니다. – Aristos

답변

1

당신은 열이있는 테이블에 투표를 절약 할 수 있습니다 GUID

사용자가 사이트를 방문 할 때 사용자 GUID를 확인하거나 hi를 할당하십시오. 새로운 것. 이렇게하면 투표를 막을 수 있습니다.

+0

이 문제는 데이터베이스가 매우 빠르게 커집니다. 하지만 지금까지는 가장 좋은 해결책 인 것 같습니다. –

1

HTML5 Local Storage을 사용할 수 있습니다.

+0

자바 스크립트와 함께 사용하는 것은 복잡하며 모든 브라우저와 호환되지 않습니다. –

1

나는 로그인하지 않은 사용자에게 임의의 ID를 할당하고이 ID를 쿠키에 저장합니다.

그런 다음 ID를 사용하여 데이터베이스의 데이터를 참조 할 수 있습니다.

  • quoteid,

  • userguid (GUID)

그리고 할당와 미등록 사용자의 브라우저에 쿠키를 설정 :

관련 문제