Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   PHP: Cookie wird erst bei zweimal klicken übernommen (https://www.delphipraxis.net/55567-php-cookie-wird-erst-bei-zweimal-klicken-uebernommen.html)

Nero 23. Okt 2005 13:13


PHP: Cookie wird erst bei zweimal klicken übernommen
 
Hi, folgendes Problem:

Auf meiner Seite habe ich zwei Styles. Per Klick auf einen Link ( index.php?style=css01 / index.php?style=css01 ) wird die Style Variable im Link gegeben. In der index.php wird der Style in einem Cookie gespeichert (hoffe ich jedenfalls, lerne erst seit heute Cookies machen)

Code:
if (isset($_GET["style"]))
   {
    setcookie ("style", $_GET['style'], time() - 3600);
    setcookie ("style", $_GET['style'], time() + 3600);
   }
$style = $_COOKIE["style"];
Wenn also ein Parameter im Link gegeben ist (das ist nur der Fall wenn man den Style ändert) wird der Cookie neu gesetzt. Wenn ich jetzt auf den Link zum Style ändern (z.b. css02) klicke, passiert erstmal nichts. Dann:

1. Wenn ich dann nochmal auf den gleichen (css02) draufklicke, ändert sich das Design zu css02.
2. Wenn ich dann auf den anderen klicke (css01), ändert sich das Design auch zu css02.

Meine Vermutung:

Beim ersten Klick wird der Cookie schon gesetzt, wird aber im nachfolgenden Code nicht eingesetzt. Wenn man nochmal klickt, wird der vorhergesetzt Cookie angewendet.

Woran kann das liegen? Wie gesagt, ich mache Cookies erst seit heute.

Nightshade 23. Okt 2005 14:06

Re: PHP: Cookie wird erst bei zweimal klicken übernommen
 
Der Cookie wird zwar gesetzt, wird aber deiner Variable $style nicht zugewiesen.

Code:
if (isset($_GET["style"]))
   { 
    setcookie ("style", $_GET['style'], time() - 3600);
    setcookie ("style", $_GET['style'], time() + 3600);
    $style = $_GET["style"];
   } else if (isset($_COOKIE["style"])) {
    $style = $_COOKIE["style"];
   } else {
    $style = "css01";
}

Dann gehts...

Nero 23. Okt 2005 14:16

Re: PHP: Cookie wird erst bei zweimal klicken übernommen
 
Joa cool,

DANKE :D


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:41 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz