Ga naar inhoud

Cookies &*@@$


anoniem

Aanbevolen berichten

Ik had er nooit aan moeten beginnen maar ik ben met cookies bezig. Dit om gebruikers van een interne telefoonlijst hun favo sorteervolgorde te laten bewaren. Het cookie wordt geschreven met php, en wel als volgt [code:1:b1f13d46f9] <?php //Default sorteervolgorde if (isset($order)){ //Er is een default gekozen => wegschrijven naar cookie setcookie("IntTel_DefOrd", $order, time()+28*24*60*60); } else { $order="afd"; } [/code:1:b1f13d46f9] Dit alles staat uiteraard voor de <html> tag. En het cookie wordt ook daadwerkelijk geschreven. Het uitlezen van de cookie wordt gedaan in het menu wat we gebruiken. Een of ander javascript ding wat een collega opgeduikelt heeft. De functie die de cookie uitleest is als volgt: [code:1:b1f13d46f9] function getCookie(name) { // use: getCookie("name"); var re = new RegExp(name + "=([^;]+)"); var value = re.exec(document.cookie); return (value != null) ? unescape(value[1]) : null; } var today = new Date(); var expiry = new Date(today.getTime() + 28 * 24 * 60 * 60 * 1000); // plus 28 days function setCookie(name, value) { // use: setCookie("name", value); document.cookie=name + "=" + escape(value) + "; expires=" + expiry.toGMTString(); } function LaadIntTel(){ deforder=getCookie("IntTel_DefOrd"); parent.frames["main"].location= "../int_tel/int_tel.php?order="+deforder; } [/code:1:b1f13d46f9] Ooit heeft dit gewerkt, echter momenteel wordt de waarde van het cookie op null gezet zodra hij wordt uitgelzen. Iemand? _________________ 4F6E65204F5320746F2072756C65207468656D20616C6C2C204F6E65204F5320746 F2066696E64207468656D2C204F6E65204F5320746F206272696E67207468656D20 616C6C20616E6420696E20746865206461726B6E6573732062696E64207468656D2E20 [ Dit Bericht is bewerkt door: Bilbo op 2002-01-21 14:23 ]
Link naar reactie
Het cookie wordt wel degelijk door PHP geschreven, maar is pas leesbaar NA opnieuw laden van de pagina. Dus als je na het zetten van het cookie (dmv PHP) de pagina waar je het cookie wilt gebruiken opnieuw laad (en niet direct erna) zal het cookie wel een leesbare waarde hebben. Ik heb getest met onderstaande pagina's (uiteraard naar eigen wens uit te breiden/samen te voegen :wink: ) cook.htm : [code:1:4e42a32d60] <html> <script language="JavaScript"> function getCookie(name) { // use: getCookie("name"); var re = new RegExp(name + "=([^;]+)"); var value = re.exec(document.cookie); return (value != null) ? unescape(value[1]) : null; } var today = new Date(); var expiry = new Date(today.getTime() + 28 * 24 * 60 * 60 * 1000); // plus 28 days function setCookie(name, value) { // use: setCookie("name", value); document.cookie=name + "=" + escape(value) + "; expires=" + expiry.toGMTString(); } function LaadIntTel(){ deforder=getCookie("IntTel_DefOrd"); document.location= "int_tel.php?order="+deforder; } </script> <a href="javascript:LaadIntTel()">getcookie</a> </html> [/code:1:4e42a32d60] int_tel.php : [code:1:4e42a32d60] <?php //Default sorteervolgorde if (isset($order)){ //Er is een default gekozen => wegschrijven naar cookie setcookie("IntTel_DefOrd", $order, time()+28*24*60*60); echo "writen"; } else { $order="afd"; } echo $order."<<<<"; ?> <script language="JavaScript"> document.location="page2.htm"; </script> [/code:1:4e42a32d60] page2.htm : [code:1:4e42a32d60] <html> <script language="JavaScript"> function getCookie(name) { // use: getCookie("name"); var re = new RegExp(name + "=([^;]+)"); var value = re.exec(document.cookie); return (value != null) ? unescape(value[1]) : null; } alert(getCookie("IntTel_DefOrd")); </script> </html> [/code:1:4e42a32d60]
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...