Oto, co mam nadzieję, to szybkie pytanie ...Ustawienie strony Wide Cookie
Próbuję ustawić plik cookie, który może być używany w trybie sitewide. Tworzę witrynę typu lead generation type. Chcę, aby użytkownicy wypełniali formularz w celu uzyskania dostępu do wyjątkowych informacji. Po wypełnieniu formularza mają dostęp do informacji.
Zrzucam ciasteczko, gdy użytkownik przesyła formularz, aby po następnym odwiedzeniu strony mógł od razu przejrzeć zawartość. Wypełniony formularz znajduje się na pasku bocznym każdej strony w witrynie. Gdy użytkownik wypełni formularz na jednej stronie, nie powinien go widzieć na DOWOLNEJ stronie witryny.
Wszystko działa, oprócz bitu w witrynie. Myślę, że problem jest w tym trochę kodu:
function set_cookie(name, value, expires, path, domain, secure){
if (!expires){expires = new Date()}
document.cookie = name + "=" + escape(value) +
((expires == null) ? "" : "; expires=" + expires.toGMTString()) +
((path == null) ? "" : "; path=" + path) +
((domain == null) ? "" : "; domain=" + domain) +
((secure == null) ? "" : "; secure");
}
Ale tutaj jest pełny kod poniżej. DZIĘKI WIELKIE!
<script type="text/javascript">
<!--
cookie_name="landasp"
expdays=365
// An adaptation of Dorcht's cookie functions.
function set_cookie(name, value, expires, path, domain, secure){
if (!expires){expires = new Date()}
document.cookie = name + "=" + escape(value) +
((expires == null) ? "" : "; expires=" + expires.toGMTString()) +
((path == null) ? "" : "; path=" + path) +
((domain == null) ? "" : "; domain=" + domain) +
((secure == null) ? "" : "; secure");
}
function get_cookie(name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg){
return get_cookie_val(j);
}
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function get_cookie_val(offset){
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function delete_cookie(name,path,domain){
document.cookie = name + "=" +
((path == null) ? "" : "; path=" + path) +
((domain == null) ? "" : "; domain=" + domain) +
"; expires=Thu, 01-Jan-00 00:00:01 GMT";
}
function saving_cookie(){
var expdate = new Date();
expdate.setTime (expdate.getTime() + (expdays*24*60*60*1000*30)); //set for one month
Data="cooked"
set_cookie(cookie_name,Data,expdate)
}
function get_cookie_data(){
inf=get_cookie(cookie_name)
if(!inf){
document.getElementById("display1").style.display="block"
}
else{
document.getElementById("display2").style.display="block"
}
}
// -->
</script>
Witamy w stackoverflow! Jeśli uważasz, że odpowiedź zawiera odpowiedź na twoje pytanie, zaznacz ją jako odpowiedź, klikając zielone pole wyboru. – vidstige