Toon posts:

[PHP] Sessions, cookies: variabelen werken niet? *

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,
Ik zit met een probleem en kan er niet uit komen!
Ik heb een site! Nu heb ik 2 template files gemaakt, 1 templaterood.html en een template.html (deze templates veranderen de kleuren op de site). Als template engine gebruik ik phplib! Nu zet ik alle inlog gegevens (inlognaam en wachtwoord) in een sessie! In het bestand home.php wordt het template werk gedaan, dus mene.php koppelen aan {menu} en top.php koppelen aan {top} etc etc...

Probleem:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?
Ik heb in home.php een switch gezet (template.html is std en is blauw):
if ($templatecolor=="") {            
    $templatecolor="blauw";
    $templatebestand="template.html";
  }
else {
      switch ($templatecolor) {

      case "blauw":
         $templatebestand="template.html";
         $templatecolor="blauw";
         break;
      case "rood":
         $templatebestand="templaterood.html";
         $templatecolor="rood";
         break;
      default:
         $templatecolor="blauw";
         $templatebestand="template.html";
      }
   session_register("templatecolor"); 
}
?>

Nu heb ik binnen de site zelf 2 knoppen (submit buttons) bij de ene (per knop, aparte form):
code:
1
<input "hidden" name="templatecolor" value="rood">

plus de rest van form bij de ander is rood, blauw... Op het eerste gezicht werkt dit perfect, als je op rood drukt wordt templaterood.html ingeschakeld! Maar druk ik vervolgens op blauw dan blijft hij gewoon rood! verdomme d8 ik toen :s dus toen d8 ik, ik verwijder templatecolor uit de sessie (net voor de regel waar hij geregistreerd wordt. Door session_unregister("templatecolor") --> dit werkt dus niet vervolgens, session_destroy("templatecolor") (moet toch wat proberen :D) --> werkt ook niet!

Toen sessions en cookies gescheiden, dus inlog gegevens in de sessie en $templatecolor in de cookies (weet niet zeker of je dit wel samen kunt gebruiken!) werkt net als met de sessie, alleen ik d8, als inlog gegevens in de sessie stop ik templatecolor in cookie zodat je het cookie weer kunt verwijderen zonder dat dat invloed heeft op je inlog gegevens (dus ipv session_register("templatecolor");, setcookie("templatecolor", $templatecolor", 0, "/"); en om hem te verwijderen weer die regel)! Dit werkt alleen ook niet! Kan iemand mij helpen, of heb je een andere oplossing??

Het is dus de bedoeling om te switchen tussen 2 templates...
Ik kan het wel doen door bij elke link te veranderen door er &templatecolor=rood (of blauw)bij te zetten alleen de site bestaat al en het is dus super veel werk om alle links aan te passen! Of is er een oplossing om het met stylesheets te doen, dat je bij a {.....} iets zet zodat alle links worden aangepast?

Alvast bedankt!!

ps. Hopelijk valt m'n verhaal een beetje te snappen, tis een beetje verwarrend... :D

Verwijderd

Beetje verwarrend? om eerlijk te zijn snap ik er geen fuck van |:(

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Topic titel iets duidelijker gemaakt. Wil je voortaan ook even php tags voor je code gebruiken?

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


Verwijderd

Topicstarter
Ow sorry, ik d8 dat hij dat automatisch deed als je <? code ?> deed...:S

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
* mbravenboer is powerful ;) .

(to powerful voor de oplettende bezoeker tussen mijn twee edits: ik haat HTML rechten ;) )

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment