Registreer FAQ Berichten van vandaag


Ga terug   Scholieren.com forum / Technologie / Software & Hardware
Reageren
 
Topictools Zoek in deze topic
Oud 03-08-2003, 21:32
Fade of Light
Avatar van Fade of Light
Fade of Light is offline
ik heb een probleem met sessies in combinatie met frames. Allereerst heb ik altijd netjes de sessies werkend gekregen in main (dan had ik onderaan de pagina steeds ene link naar de volgende pagina gemaakt). Daar zit dus de fout NIET.

Nu heb ik een login pagina, die registreert de variabele $coord. Daar doe ik include('totaal.php'); (in die include zit de fout ook zeker niet)
Code:
  totaal.php: 
<?php
session_start();
// even voor de duidelijkheid, de sessie coord doet het hier goed.
$coord = $_SESSION['coord']; 

/* als ik hier echo $coord; zou doen, dan zou ik het goede antwoord krijgen */

?>
<frameset cols="20%,80%">

<frame src="homebar.php">
<frameset rows="20%,80%">
<frame src="details.php">
<frame src="home.php" name="main">

</frameset>
en dan heb ik homebar.php:

Code:
<? 
session_start();
$coord = $_SESSION['coord'];
echo $coord;
?>

Nu krijg ik geen uitvoer. De $coord is leeg.

Warum warum?
Met citaat reageren
Advertentie
Oud 03-08-2003, 21:44
Kaboon
Kaboon is offline
Ik ben geen ster met sessies in PHP. Ik heb wel een idee waarom het niet gaat werken.

Ik denk dat je op deze manier 2 sessies start? Eentje in totaal.php en eentje in homebar.php. Maar ik neem aan dat het maar 1 moet zijn?

Is het niet zo: sessie aanmaken in totaal.php dan in homebar.php de sessie variable $coord gewoon weer opvragen door middel van bijvoorbeeld require('totaal.php'); ?

Waarom überhaubt geen speciale functie / class gebruiken die sessies registreert?
Met citaat reageren
Oud 03-08-2003, 22:03
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Het zou kunnen dat de request voor die ene frame gedaan wordt terwijl de sessie data nog niet is weggeschreven, maar dan zou het bij een refresh wel moeten werken.

Maar er kleven nog meer nadelen aan frames, waarom wil je persé frames gebruiken? Desnoods iframes ofzo.
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 03-08-2003, 23:21
Fade of Light
Avatar van Fade of Light
Fade of Light is offline
Citaat:
Enlightenment schreef op 03-08-2003 @ 23:03:
Het zou kunnen dat de request voor die ene frame gedaan wordt terwijl de sessie data nog niet is weggeschreven, maar dan zou het bij een refresh wel moeten werken.

Maar er kleven nog meer nadelen aan frames, waarom wil je persé frames gebruiken? Desnoods iframes ofzo.
frames was wel handig met het design =)

idd is het verder overbodig lol maar ik stuitte erop en het leek me toch wel te moeten werken...anders is php wel heel crappy
Met citaat reageren
Oud 03-08-2003, 23:23
Fade of Light
Avatar van Fade of Light
Fade of Light is offline
Citaat:
Kaboon schreef op 03-08-2003 @ 22:44:
Ik denk dat je op deze manier 2 sessies start? Eentje in totaal.php en eentje in homebar.php. Maar ik neem aan dat het maar 1 moet zijn?
Nee zo werkt dat niet

session_start(); moet je boven iedere pagina zetten die binnen het domein van je sessies vallen.

Citaat:
Is het niet zo: sessie aanmaken in totaal.php dan in homebar.php de sessie variable $coord gewoon weer opvragen door middel van bijvoorbeeld require('totaal.php'); ?
dat gebeurt dus met $coord = $_SESSION['coord'];

Citaat:
Waarom überhaubt geen speciale functie / class gebruiken die sessies registreert?
waarom moeilijker maken dan nodig? Daarbij denk ik dat je uitging van een verkeerd begrip van sessies
Met citaat reageren
Oud 04-08-2003, 02:58
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Ik denk dat je beter geen frames kunt gebruiken, zodoende voorkom je dat er 2 requests parallel lopen.
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 04-08-2003, 06:48
Chimera
Avatar van Chimera
Chimera is offline
Citaat:
Enlightenment schreef op 04-08-2003 @ 03:58:
Ik denk dat je beter geen frames kunt gebruiken, zodoende voorkom je dat er 2 requests parallel lopen.
Nee hoor, maar je moet gewoon in je frameset pagina geen dingen doen als sessies aanmaken.
Met citaat reageren
Oud 04-08-2003, 10:03
Manuzhai
Avatar van Manuzhai
Manuzhai is offline
In plaats van frames kan je tegenwoordig in de meeste gevallen ook een CSS-gebaseerde oplossing gebruiken, en dat is nog netter ook.
__________________
Slechts beschikbaar via naamzoek/privebericht.
Met citaat reageren
Oud 04-08-2003, 11:33
Fade of Light
Avatar van Fade of Light
Fade of Light is offline
Citaat:
Manuzhai schreef op 04-08-2003 @ 11:03:
In plaats van frames kan je tegenwoordig in de meeste gevallen ook een CSS-gebaseerde oplossing gebruiken, en dat is nog netter ook.
alleen buiten mijn kennisgebied

naja ik ga wel aanklooien zonder frames dan

Chimera: en toch gaat het fout
Met citaat reageren
Oud 04-08-2003, 12:44
Kaboon
Kaboon is offline
En sessies vallen nou net buiten mijn kennisgebied... Bedankt voor de verklaring.
Met citaat reageren
Oud 04-08-2003, 13:03
Verwijderd
Wat dacht je van:
Code:
<?php
session_start();
$sid = session_id(); 


// even voor de duidelijkheid, de sessie coord doet het hier goed.
$coord = $_SESSION['coord']; 
/* als ik hier echo $coord; zou doen, dan zou ik het goede antwoord krijgen */

?>
<frameset cols="20%,80%">

<frame src="homebar.php?sid=<?=$sid?>">
<frameset rows="20%,80%">
<frame src="details.php?sid=<?=$sid?>">
<frame src="home.php?sid=<?=$sid?>" name="main">

</frameset>
DUs de sid meegeven in de source en uitlezen en zetten in je andere pagina's.
Met citaat reageren
Advertentie
Reageren


Regels voor berichten
Je mag geen nieuwe topics starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit

Spring naar


Alle tijden zijn GMT +1. Het is nu 12:34.