|
Przechowywanie informacji w
cookies
Php pozwala w prosty sposób przechowywać informacje w cookies, a wszystko to
za sprawą prostej funkcji setcookie() Aby zobaczyć jak działa obsługa
cookies w php
utwórz plik np. test.php3 i wklej do niego poniższy kod (pamiętaj że
dodawanie informacji do cookies musi się odbywać przed nagłówkiem
dokumentu):
-----------------------------------------------------------------------------------
<?
if($ciastko=="ON"){//jeśli została zaznaczona opcja, zapisujemy
informacje w cookies
setcookie("userlogin", "$login", time()+999999999*3);
//trzeci parametr funkcji setcookie() określa ile czasu informacja ma zostać
//zatrzymana w ciasteczku, nie podanie trzeciego argumentu, sprawi że
informacja
//będzie przechowywana tylko do czasu zamknięcia przeglądarki.
}
?>
<html>
<head>
<title>Test ciasteczek</title>
</head>
<body>
<?
if($userlogin==""){
//jeśli zmienna $userlogin jest pusta wyświetlony zostanie formularz
//który pozwoli nam zapisać w cookies nasz np. login
echo"<form>
podaj login:<br>
<input type=text name=login><br>
<input type=checkbox name=ciastko value="ON"> - Zachowaj login
w cookies<br>
<input type=submit name=submit value=ok>
</form>";
}
else{
echo"Twój login ukryty w cookies to: $userlogin<br><br>możesz
iść dalej...";
//jeśli zmienna nie jest pusta zostanie wyświetlona, wartość $userlogin
//za każdym następnym wejściem wartość $userlogin zostanie pobrana z
cookies
//jeśli czas przechowywania się skończy, znów wyświetli się nam
formularz.
}
?>
</body>
</html>
-----------------------------------------------------------------------------------
Powyższy przykład przybliży Wam metodę zapisywania w cookies informacji.
Cookies często wykorzystujemy np. przy blokowaniu przeładowań liczników co
wygląda tak:
<? setcookie("gosc",
"1", time()+3600*3); ?>
<?
if($gosc!="1"){
$file=fopen("plik licznika", "r");
flock($file, 1);
$cyfra=fgets($file, 100);
flock($file, 3);
fclose($file);
$cyfra++;
$file=fopen("plik licznika", "w");
flock($file, 2);
fwrite($file, $cyfra);
flock($file, 3);
fclose($file);
echo($ile);
}
?>
dodał: Rip
|