[OOP] Urls en Sessions

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tim

Tim

22/02/2009 14:58:00
Quote Anchor link
Heey allemaal,


Sinds enige tijd gebruik in OOP, maar ik loop nu tegen het volgende probleem aan: Omdat ik mijn controllers en methods aanroep via de url (index.php/controller/method) kan ik niet meer 'gewoon' andere pagina's aanroepen vanuit een huidige pagina. De oplossing die ik gebruik is een global meegeven, waarin de absolute url van de website te vinden is. Deze wordt dan 'vastgeplakt' aan de nieuwe url. Nu kan ik echter geen sessies gebruiken om bijvoorbeeld gebruikersgegevens door te zenden.


Indien het bericht hierboven een beetje onduidelijk is, even een voorbeeld:

Op de pagina 'http://localhost:8080/index.php/default/main' staat een link die moet verwijzen naar de controller 'login' en de method 'main'. Wil ik deze aanroepen, dan doe ik dat als volgt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$GLOBALS['rootUrl'] . 'index.php/login/main';


Dit levert de juiste url op (http://localhost:8080/index.php/login/main), maar betekent wel dat ik geen sessies kan gebruiken.

Aangezien ik toch graag sessies wil gebruiken zoek ik hier een oplossing voor. Dus: Graag jullie reacties op dit probleem! ;-)

Groetjes,
Tim
Gewijzigd op 01/01/1970 01:00:00 door Tim
 
PHP hulp

PHP hulp

05/11/2024 20:38:50
 
Jelmer -

Jelmer -

28/02/2009 09:22:00
Quote Anchor link
Ik zie niet helemaal waarom je geen sessies meer zou kunnen gebruiken. Sessies gebruiken cookies, en cookies zitten vast aan de same-origin policy. Maar wanneer je van http://localhost:8080/... naar http://localhost:8080/... gaat, moet dat geen probleem zijn als de cookie als pad '/' heeft, en je tussen je aanvragen niet verandert van hostnaam (localhost) en poort.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.