Avatar billede mik789 Nybegynder
16. marts 2003 - 18:46 Der er 1 kommentar og
1 løsning

$_SESSION['var'] eller session_register("var")

Jeg sidder og roder med at finde ud af php's session funktioner. Er ingen haj, men endnu bare en lille sild...

Hvis jeg gør sådans:

<?php session_start(); ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>

<body>

<?php if(!isset($r)){ ?>
<script type="text/javascript"><!--
if (screen.width<=800) {
  window.location.href=window.location.href+'?r=8';
} else if (screen.width>=1024) {
  window.location.href=window.location.href+'?r=10';
}
//--></script>
<?php }else{session_register("r");
echo ("r er sat til $r");
} ?>
</body>
</html>

- tildeles variablen r den værdi som javascriptet finder frem til og overfører via querystrengen. Men hvis jeg erstatter <?php if(!isset($r)){ ?> med:

<?php if(!isset($_SESSION['r'])){

og <?php }else{session_register("r"); med:

<?php }else{ $_SESSION['r'];

virker det ikke. Værdien fra querystrengen opfanges ikke, og i stedet reloader dokumentet igen og igen.

Hvorfor det? Hvad er forskellen mellem de to metoder?
Avatar billede mik789 Nybegynder
16. marts 2003 - 20:34 #1
jeg tror nok at en af forskellene er at session_register() kan modtage værdier fra querystrengen i en URL. Det kan $_SESSSION['var'] ikke... tror jeg
Avatar billede mik789 Nybegynder
17. marts 2003 - 06:25 #2
lukker her og stiller spørgsmålet mere generelt
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester