Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

PHP - postavljanje cookie-a i citanje vrednosti istog?

[es] :: Web aplikacije :: PHP - postavljanje cookie-a i citanje vrednosti istog?

[ Pregleda: 1909 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

neb
RS

Član broj: 30960
Poruke: 463
*.dynamic.stcable.net.



+1 Profil

icon PHP - postavljanje cookie-a i citanje vrednosti istog?30.01.2011. u 21:27 - pre 160 meseci
Da li neko ko ima vise iskustva sa PHP script jezikom moze da kaze kako da resim problem da nakon sto postavim jedan cookie u web klijent odmah zatim iscitam vrednost tacno tog istog cookie-a?

Dole naveden kod radi normalno medjutim nakon sto se isti kod izvrsi desava se jedan problem koji cu pokusati da opisem:

Code:

<?php

$value1 = rand();

// send a simple cookie
setcookie("TestCookie",$value1);

// Print individual cookies
$value2=$_COOKIE["TestCookie"];
echo $value2;
echo "<br />";

if ($value1==$value2)
{
echo "<br />";
echo "equal";
}
?>



Dole naveden kod generise random broj i vrednost istog broja postavlja u promenljivu.

Code:

$value1 = rand();


Kod dole naveden postavlja cookie i u njega upisuje vrednost datog random broja u web client.

Code:

// send a simple cookie
setcookie("TestCookie",$value1);


Kod dole bi ocekivano trebao da nakon sto je dati cookie vec postavljen u web client da pronadje isti cookie u web client-u i istu vrednost istog cookie-a prebaci u promenljivu '$value2' a zatim da vrednost iste promenljive ispise u prozoru web client-a medjutim ovo se ne desava nakon prvog poziva istog php link-a vec tek nakon drugog poziva?

Code:

// Print individual cookies
$value2=$_COOKIE["TestCookie"];
echo $value2;
echo "<br />";


Kod ispod bi trebao da ispita jednakost promenljivih '$value1' i '$value2' i da nakon sto se utvrdi da su vrednosti obeju promenljivih jednake ispise rec "equal" u prozoru web client-a.

Code:

if ($value1==$value2)
{
echo "<br />";
echo "equal";
}


Problem nastaje kada prvi put pozovem link ka datom php fajlu i isti PHP kod pocne da se izvrsava.

Kada prvi put pozovem kod u PHP fajlu i proverim cookies u svom web klijentu (Mozlla Firefox) dobijem izlaz da je isti cookie postavljen u isti web klijent.

Nakon toga odmah zelim da isti cookie iscitam iz istog web client-a i da vrednost upisem promenljivu medjutim tu nastaje problem.

Code:

// Print individual cookies
$value2=$_COOKIE["TestCookie"];
echo $value2;
echo "<br />";


Nakon sto se izvrsi isti kod koji sam ponovo naveo gore promenljiva '$_COOKIE["TestCookie"];' ne prihvata trazenu vrednost iz istog trazenog cookie-a vec vredost same promenljive '$value2' ostaje prazna.

Ista gore navedena procedura pocinje da se odigrava normalno tek nakon sto po drugi put pozovem isti link ka istom php fajlu.

Medjutim tu nastaje drugi ocekivani problem koji se manifestuje u tome sto sam random broj biva ponovo generisan i samim tim nejednak sa predhodnim brojem.

Ovo se desava usled toga sto se ceo php kod izvrsava ponovo a sa njim zajedno i sekvenca koda

Code:

$value1 = rand();


Uslov dole naveden se nikada ne ispunjava kao tacan.

Code:

if ($value1==$value2)
{
echo "<br />";
echo "equal";
}


Da li bi neko mogao da ogovori na ovo pitanje koje glasi zasto nakon sto se prvi put pozove link ka php fajlu i dati cookie bude postavljen u web klijent isti ne biva odmah pronadjen u istom web klijentu nego se ovo desava tek nakon poziva istog linka po drugi put.

Dole sam ponovo naveo linije koda kod kojih mislim da nastaje ovaj problem?

Code:

...
// send a simple cookie
setcookie("TestCookie",$value1);

// Print individual cookies
$value2=$_COOKIE["TestCookie"];
echo $value2;
echo "<br />";
...

 
Odgovor na temu

maksvel

Član broj: 107376
Poruke: 2417

Jabber: maksvel
Sajt: maksvel.in.rs


+161 Profil

icon Re: PHP - postavljanje cookie-a i citanje vrednosti istog?30.01.2011. u 21:54 - pre 160 meseci
Pri prvom pozivu setcookie(), server postavlja kolačić kod klijenta, ali nema niz $COOKIE.
Taj niz će dobiti tek kada pri novom pozivu stranice klijent u zahtevu pošalje svoj kolačić.

Citat:

Once the cookies have been set, they can be accessed on the next page load with the $_COOKIE or $HTTP_COOKIE_VARS arrays.

http://php.net/manual/en/function.setcookie.php
 
Odgovor na temu

neb
RS

Član broj: 30960
Poruke: 463
*.dynamic.stcable.net.



+1 Profil

icon Re: PHP - postavljanje cookie-a i citanje vrednosti istog?30.01.2011. u 22:12 - pre 160 meseci
Kako da resim ovaj problem?

Takodje cu prouciti link koji si mi poslao.
 
Odgovor na temu

maksvel

Član broj: 107376
Poruke: 2417

Jabber: maksvel
Sajt: maksvel.in.rs


+161 Profil

icon Re: PHP - postavljanje cookie-a i citanje vrednosti istog?30.01.2011. u 22:48 - pre 160 meseci
Pitanje je šta pokušavaš..
Nije zgoreg proveriti da li je kolačić postavljen, pa onda vršiti postavljanje.
Code:

if (isset($_COOKIE["TestCookie"]))
 
Odgovor na temu

neb
RS

Član broj: 30960
Poruke: 463
*.dynamic.stcable.net.



+1 Profil

icon Re: PHP - postavljanje cookie-a i citanje vrednosti istog?30.01.2011. u 23:02 - pre 160 meseci
Videcu pa cu javiti ako bude bilo dalje problema.
 
Odgovor na temu

[es] :: Web aplikacije :: PHP - postavljanje cookie-a i citanje vrednosti istog?

[ Pregleda: 1909 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.