Avatar billede daki Juniormester
28. august 2003 - 06:44 Der er 10 kommentarer og
2 løsninger

Forklaring til brugen af $_SESSION

Hvis jeg har forstået det ret, efter at have læst div. spørgsmål på eksperten samt set forskellige forklaringer på razor.dk og webcafe.dk skulle man kunne benytte $_SESSION på følgende måde.

fil1:
<?php
session_start();
include_once("admin.head.inc.php");

if (isset($type) && $type=="insert")
  {
  $_SESSION["var0"] = $_GET["overskrift"];
  $_SESSION["var1"] = $_GET["forfatter"];
  $_SESSION["var2"] = $_GET["nyhed"];
  $_SESSION["var3"] = $_GET["gruppe"];
  ?><a href=fil2.php>Gå nu til fil2.php</a><? // Send mig direkte til fll2, udeen at skulle trykke på noget link.
  }

if (!isset($type))
  {
  ?>
  <h3><center>Redigeringsside<br><br>
  </td></tr><tr><td><h3>
  <table align="center" border="0" width="340" bgcolor="#FFFF95" cellpadding="5" cellspacing="0" class="blackborder" style : (margin-left:0; margin-top:0)>
  <tr><td>
  <form action="fil1.php" method="post">
  <input type="hidden" name="type" value="insert">
  <h3>Tilføj en nyhed:<br><br>
  <h2>Overskrift:<br>
  <input type="text" name="overskrift" size="50" class="blackborder">
  <h2>Forfatter:<br>
  <input type="text" name="forfatter" size="50" class="blackborder">
  <h2>Nyhed:<br>
  <textarea name="nyhed" cols="50" rows="10" class="blackborder"></textarea>
  <?
  if ($login_id==$erh_pass)
      { ?> <input type="hidden" name="gruppe" value="1"> <? }
  else
      { ?> <input type="hidden" name="gruppe" value="2"> <? }
  ?>
  <center><input type="image" src="images/ok.gif" value="Tilføj" border="0">
  </form></td></tr></table><br>
  <?
  }

include_once("admin.foot.inc.php");
?>

Fil2.php
<?php
session_start();
include_once("admin.head.inc.php");

if (!isset($type))
  {
  echo $_SESSION['var0'];
  echo $_SESSION['var1'];
  echo $_SESSION['var2'];
  echo $_SESSION['var3'];
  echo $_SESSION['var4']; 
  die();
  }
 
include_once("admin.foot.inc.php");
?>

Er der nogen, som kan give mig en 'Dansk' forklaring på, hvorfor der ikke bliver udskrevet noget i fil2.php og i såfald rette det som skal rettes, så det virker.

På forhånd tak.
Avatar billede erikjacobsen Ekspert
28. august 2003 - 08:41 #1
Du skal måske droppe din

if (!isset($type))
Avatar billede websmith Nybegynder
28. august 2003 - 08:51 #2
Måske fordi du starter en session på begge sider.

Drop din session_start(); i fil2.php
Avatar billede binderup Nybegynder
28. august 2003 - 10:03 #3
websmith: session_start skal være med, ellers ved PHP ikke at der er tale om en session.

"session_start() creates a session or resumes the current one based on the current session id that's being passed via a request, such as GET, POST, or a cookie." http://dk2.php.net/session_start
Avatar billede daki Juniormester
28. august 2003 - 10:55 #4
erikjoacobsen -> i begge filer eller ????
Avatar billede erikjacobsen Ekspert
28. august 2003 - 12:23 #5
Jeg mener vist kun i den anden fil.
Avatar billede daki Juniormester
28. august 2003 - 21:53 #6
Jeg fandt selv ud af det, ændrede $_GET['xx']; til $_POST['xx'];.

Er der en af jer, der kan give mig en forklaring på hvorfor jeg skal bruge $_POST frem for $_GET, når der nu står at man skal bruge $_GET - hvad er forskellen egentlig.
Avatar billede binderup Nybegynder
28. august 2003 - 22:59 #7
Så vidt jeg husker er der en begrænsning på hvor meget man kan sende afsted via get, hvor dette mere eller mindre er ubegrænset med POST

samt man får ikke så kønne URL'er med get
Avatar billede atheist Nybegynder
29. august 2003 - 17:08 #8
Hvordan virker det her session? Jeg har flere steder set Session_start(), hvad gør den godt for? I ASP kan man jo bare angive en Session("noget")="mine data" og så kalde dem frem igen med Session("noget")... Desuden vil jeg lige sige at man bare kan hente formdata frem med $_REQUEST["indfelt_navn"].... Hvad enten det er GET eller POST.
Avatar billede binderup Nybegynder
29. august 2003 - 17:43 #9
grunden til session_start er at man ikke kan gå ud fra at serveren selv gør det - du kan dog godt sætte PHP op til at lave session_start() ved hver kørsel af en side.
Avatar billede daki Juniormester
02. september 2003 - 20:41 #10
Tak for svar/kommentar, er der nogen der vil have points ??
Avatar billede binderup Nybegynder
02. september 2003 - 20:53 #11
tja
Avatar billede daki Juniormester
02. september 2003 - 21:31 #12
binderup --> Linket hjalp mig utroligt meget, så næsten alle points skal gå til dig. Håber du er tilfreds med 25 points.
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

IT-JOB

Forsknings-, Uddannelses- og Digitaliseringsministeriet

Vil du være med at udvikle sikkerhed og compliance i CPR?

Politiets Efterretningstjeneste

DevOps engineer til dataanalyse i PET

Forsvarsministeriets Materiel- og Indkøbsstyrelse

DevOps Engineer (AI) til Forsvarets nye IT-platform