Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 4 odgovora
  • 1.678 pregleda

Najnovija ↓

Problem sa citanjem cookie-a 19.11.2009. u 23:41 · pre 206 meseci
izmenjeno 1 put, poslednji put zxleka 20.11.2009. u 00:38
  1. zxleka20.11.2009. u 00:38zapis iz teksta poruke
#1
Jooj ljudi pomazite molim vas evo vec 2 sata vrtim sajtove i gledam u ovo i ne kapiram gde gresim,stvarno ne vidim,obnevideo :S

Hocu nesto jako jednostavno ispade komplikovanije od Ajaxa, bar za mene.

Samo bi da upisem jedan jedini string u cookie i da ga procitam kasnije,nista vise, ne moz' prostije. A toliko su zakomplikovali objasnjenja
pogotovo sa onim racunanjem vremena pa parsiranje kukija...meni treba samo jedna rec i da se ne menja i da traje,samo jednom se upise i stalno se cita,
nista drugo.

Evo sta sam napravio:

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function setCookie(){
    var ime = document.getElementById("ime").value;
    document.cookie = "name=" + ime + ";expires=Sat, 30 Nov 2030 10:00:00 GMT";
}

function reporter(){
    var namestart = document.cookie.indexOf("=") + 1;
    var nameend = document.cookie.indexOf(";");
    alert(document.cookie.substring(5, nameend);
}
</script>
</head>

<body>
<input name="ime" size="15" type="text" id="ime"><input type="button" value="memorisi" onClick="setCookie();"><input type="button" value="pokazi" onClick="reporter();">
</body>
</html>


Stalno mi vraca "name=" ne znam zasto?? Cak sam i umesto namestart stavio 5 i opet isto. Doduse testiram stranicu na svom racunaru a ne na serveru
pa jel mozda zato? Ili sam nesto oko vremena zabrljao. Najgore od svega kad pogledam u Operi cookie postoji i sve vrednosti su upisane u cookie al
nece da ga vrati.

Unapred zahvaljujem na pomoci,

Leka.
Re: Problem sa citanjem cookie-a 20.11.2009. u 00:16 · pre 206 meseci #2

Oooooo proklet bio, pronasao sam zasto nece :D

Nece da radi ako izostavim path koji i ovako nicemu ne sluzi :\

sad kad sam stavio ovako radi:

Code:
document.cookie = "name=" + ime + ";expires=Sat, 30 Nov 2030 10:00:00 GMT; path=/";
Re: Problem sa citanjem cookie-a 20.11.2009. u 00:19 · pre 206 meseci
izmenjeno 1 put, poslednji put Aleksandar Ružičić 20.11.2009. u 00:52
  1. Aleksandar Ružičić20.11.2009. u 00:52zapis iz teksta poruke
#3
evo ti moje fje za citanje cookiea:
Code:

function readCookie(name, defval) {
    return ((new RegExp('(^|; )' + name.replace(/([\[\]\|\?\*\+\.\(\)])/g, '\\$1') + '=(.*?)(;|$)').exec(document.cookie)) && unescape(RegExp.$2)) || defval;
}


dodaj je u tvoj kod i onda bi ti reporter funkcija izgledala ovako:
Code:

function reporter() {
    alert(readCookie('name'));
}



edit: ipak nije bio problem do citanja :) (mada tvoj kod za citanje radi samo ako je setovan jedan cookie za taj domen, sto je vrlo redak slucaj...)
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: Problem sa citanjem cookie-a 20.11.2009. u 00:33 · pre 206 meseci #4
Pa da...samo mi to i treba da zapamti obican user name u jednom txt generatoru da ne mora stalno da se upisuje,samo toliko. :)

Nego...da pitam usput...recimo kad se koriste cookies-i i sad cuvas u njima recimo ime,pass,vreme...itd. znaci svaka vrednost ide kao
poseban par ime/vrednost/vreme/path i onda samo parsiras cookie po imenima kad ga citas?

Bas sam se prvi put uhvatio sa cookies-ima al ovako sam nesto ukapirao citajuci,ako sam dobro ukapirao :) Mnogo su ih zakomplikovali
ako se ja pitam,pogotovo sto nema expire = never.

edit: hvala puno za funkciju ;) odma cu se baciti na deshifrovanje.
Re: Problem sa citanjem cookie-a 20.11.2009. u 00:51 · pre 206 meseci #5
na stranu to koliko je pametno da cuvas osetljive informacije u kukijima (ukratko: uopste nije pametno), u pravu si, cuvas ih kao odvojene kukije.

evo ti "desifrovane" funkcije za dodavanje/citanje kukija (nisam ih testirao, posto inace koristim one-liner varijante :D):
Code:

function readCookie(name, defval) {
   name = name.replace(/([\[\]\|\?\*\+\.\(\)])/g, '\\$1');
   var re = new RegExp('(^|; )' + name  + '=(.*?)(;|$)');
   var match;
   if (match = re.exec(document.cookie)) {
      return unescape(match[2]);
   } else {
      return defval;
   }
}

function writeCookie(name, value, days) {
   var cookie = name + '=' + escape(value) + ';';
   if (days) {
       cookie += ' expires=' + new Date(+new Date + days * 86400000).toGMTString() + ';';
   }
   document.cookie = cookie + ' path=/';
}


a koristis ih ovako:
Code:

writeCookie('userinfo[name]', 'ime', 14);
writeCookie('userinfo[pass]', 'sifra', 14);
...
var username = readCookie('userinfo[name]');
var password = readCookie('userinfo[pass]');


naravno ne moras da ih nazivas sa [], ja sam to uradio jer ako npr na serveru koristis php mocices da pristupis kukiju na sledeci nacin:
Code:

$userinfo = $_COOKIE['userinfo'];
print_r($userinfo); // ovo ce ti isprintati: Array('name' => 'ime', 'pass' => 'sifra')
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme