Piszę sobię prostą otwartą stronkę (w senie że nie ma kont użytkowników i mieć nie będzie) ośrodka wypoczynkowego, który prowadzę. Chciałbym mieć na tej stronie ankietę, poprzez którą klienci mogliby ocenić świadczone usługi. No ale nie chciałbym aby mogli klikać raz za razem. Dlatego cookies wydają mi się nienajgorszym wyborem, tym bardziej że nei jest to w żadnym wypadku portal społecznościowy czy coś. Napisałem sobie więc taką ankietę:
<?php echo "<p style=\"margin: 41px 26px 16px 12px; text-align:center; font-size:12px; color:#361f0d; font-weight:bold; font-family:Arial;\">Korzystałeś z naszych usług? Możesz nas ocenić!</p>"; echo "<center><font style=\"font-family:Arial; color:#361f0d; font-size:12px\">Twoja ocena:</font> <select name=\"rating\" class=\"survey\">"; }else{ echo "<p style=\"margin-top: 41px; margin-right=16px; margin-left: 12px; text-align:center; font-size:12px; color:#361f0d; font-weight:bold; font-family:Arial;\">Już głosowałeś!</p>"; } ?>
Plik survey.php:
$nrate=$nrate+1; $srate=$srate+$_POST['rating']; ?> <html> <head> <meta http-equiv="refresh" content="0; url=http://localhost/~kamil/marysienka/show.php?name=home"> </head> </html>
Naliczanie głosów działa bez problemu, ale instrukcja if(!isset($_COOKIE['marysienka'])) {...}else{...} nigdy nie wchodzi w zbiór else. Co wiecej, gdy dodałem instrukcję echo $_COOKIE['marysienka'] do pliku z ankietą, to po zagłosowaniu instrukcja nie zwróciła, żadnych wartości... Tak jakby cookie wygasało.
Jednak gdy utworzyłem plik temp.php o zawartości <?php echo $_COOKIE['marysienka']; ?>, to po jego wywołoaniu otrzymałem wartość zapisaną w cookie.
Czy może mi ktoś wyjaśnić dlaczego ten skrypt nie działa?
Z góry thx za pomoc.
Pozdrawiam,
Kamil