2009-12-30 8 views
0

사용자가 탐색 메뉴에 표시 할 목록 항목을 선택할 수있는 웹 사이트를 구축하고 있습니다. 사용자가 쿠키에서 선택하는 메뉴 항목을 저장하면 이것이 필요하지 않게됩니다. 사용자가 웹 사이트에 등록 된 회원 인 경우 실시간 데이터를 쿠키에 저장할 수 있습니까? 어떻게해야합니까? 더 많은 정보를 위해 탐색 옵션은 mysql 결과로 만들어지고 링크는 링크를 클릭하고 다른 링크는 추가됩니다. 다시 클릭하면 삭제됩니다. 사용자가 목록에서 추가/삭제합니다.실시간 데이터 저장

답변

2

쿠키를 사용하여 사용자를 식별하고 MySql에 저장하는 모든 메뉴 옵션을 수행합니다.

쿠키에서 사용자 ID를 가져 와서 db에 menu_options를 쿼리하여 표시하십시오.

어느 쪽이든, 쿠키 또는 데이터베이스에 데이터를 저장하는 경우 쿠키가 만료되면 (효과적으로) 사용자가 유효합니다. 또한 Adware 및 CCleaner와 같은 클리너를 사용하여 쿠키를 항상 삭제합니다. 나는 이것을 일주일에 한 번한다. 쿠키 = 사라.

+1

+1. 쿠키에는 최대 크기가 있습니다 (약 4kB 정도). 각 요청에 대해 위아래로 보내는 것은 비효율적입니다. 데이터가 생성되고 사용되는 곳 (예 : 서버 측)에서 데이터를 훨씬 잘 유지하고 사용자 식별을 위해 쿠키에 유일한 ID 만 넣으십시오. – Wim

0

이것은 나쁜 생각입니다.

브라우저에 저장할 수있는 쿠키 수는 정의되어 있지 않지만 대부분의 브라우저에는 하드 제한이 있습니다. RFC 2109는 호스트 당 최소 20 개의 쿠키와 4k의 최소 쿠키 크기를 제안합니다. 물론 후자는 대부분의 브라우저에서 준수합니다.

또한 서버 측 상태가 좋지 않으면 세션 관리의 모든 기능을 복제해야합니다. 이 길로 내려 오는 고통의 종류가 당신을 일으키는 것을 원하지 않습니다. 세션 데이터를 서버 측에 보관하십시오.

사용자가 '로그인'하여 세션을 가질 필요는 없습니다. 영구 쿠키에 자동 ID를 지정하기 만하면됩니다 (로그인 한 경우이를 대체합니다). 그리고 사용자가 구성을 변경할 때 세션을보다 장기적인 스토리지로 다시 매핑하십시오.

c

관련 문제