2011-05-03 4 views
0

특정 프로젝트에 대해 사용자가 처음 페이지를 방문하면 경고/알림 상자가 나타나고 사용자가 "x"를 눌러 알림을 닫을 때 중단 한 다음 후속 방문에 나타납니다 - 나는 (PHP를 통해) 쿠키의 설정이 필요하고 아마도 jQuery를 통해 쿠키의 존재 여부에 응답하는 경고 div가 필요하다고 생각합니까? 여기 시작하는 방법에 대한 기본 방향은 매우 높이 평가됩니다.기본 쿠키 질문

+0

당신은 지금까지 무엇이 있습니까? –

+0

나는 지금까지 아무것도 가지고 있지 않다 :) 질문은 (적어도 처음에는) – nickpish

답변

1

브라우저 측 쿠키를 사용하여 수행 할 수 있습니다. jquery 쿠키 플러그인 http://plugins.jquery.com/project/Cookie을 살펴보십시오.

편집 : 다음은 내가 사용하는 방법입니다.

유용한 정보 저장 내 유용한 정보 개체가 있으므로 표시해야 할 것 이상의 유용한 정보가 하나도 표시되지 않습니다.

save_helpful_notices: function() 
    { 
     var date = new Date(); 
     date.setTime(date.getTime() + (7 * 24 * 60 * 60 * 1000)); // expire in a week or thereabouts 
     jQuery.JSONCookie('helpfulnotices', helpfulnotices, {path: '/', expires: date }); 
    }, 

및 페이지로드에 내가 다시 수화물이 :

helpfulnotices = jQuery.JSONCookie('helpfulnotices'); 
+0

을 잡는 최선의 접근법이다. 그래서이 접근법으로 PHP없이 jQuery를 사용할 수 있을까? 통지와 함께 쿠키 발견시 div의 가시성을 변경 하시겠습니까? – nickpish

+0

예. PHP가 전혀 포함되어 있지 않습니다. 나는 지금 브라우저 "팁"의 번호로 이것을한다. – Femi

+0

감사합니다. Femi-- 우연히 공유 할 수있는 링크가있어서 구현을 볼 수 있습니까? – nickpish

1

당신은 할 수 있어야 다음

if(!helpfulnotices.multiupload){ 
      helpfulnotices.multiupload = true; 
      top.flicsy.notify_user(flicsy_lang.message_upload_multiple, "", true); 
      self.save_helpful_notices(); 
     } 

은 JQuery와 JSON 쿠키 확장을 사용하여 구조를 저장하는 코드이다 쿠키로 설정하십시오. 그러나 다음에 사용자가 볼 수 없다고 보장 할 수는 없습니다. 또한 새로운 사용자가 공유 컴퓨터에있는 경우이를 볼 수 있다고 보장하지 않습니다.

이러한 것들은 항상 "사용자 로그인 시스템"과 함께 사용하면 각 사용자를 개별적으로 추적 할 수 있습니다. 그런 다음 데이터베이스에 설정을 저장하고 이후 방문시 각 사용자에 대한 설정을 불러올 수 있습니다.

+0

맞아요, 덕분에 cdburgess – nickpish

1

정보를 쿠키에 저장할 수는 있지만 클라이언트에서 서버로이 쿠키를 항상 앞뒤로 보낼 것이라는 의미입니다. 당신이이 문제를 방지하려면

, 당신은 존재하는 경우가로 폴백하지 않는 경우는, 브라우저에서 로컬 스토리지를 사용할 수 있습니다, 그래서 기본적으로

http://www.bing.com/search?q=html5+localStorage&src=ie9tr

로컬 스토리지

라는 새로운 HTML5 변수를 사용할 수 있습니다 쿠키. 그것은 최적의 솔루션이 될 것입니다.

+0

좋은,이 HTML5 기능을 인식하지 못했습니다 ... 나는 그것에 감사 할 것입니다. – nickpish