Beste mensen,

Nu een ander vraagje,
ik heb bij een ingelogde user een sessie meegegeven, als voorbeeld :

jan jansen -> 16901a9ad3b06378ee0edaa8f55e206e

Nu wil ik graag het volgende

eerst was de website zo (vroeger)

http://www.domein.nl/apps/CustomerService/mijngegevens.php

en nu wil ik dit (toekomst)

http://www.domein.nl/apps/CustomerService?SessionID=16901a9ad3b06378ee0edaa8f55e206e&xnode=mijn_gegevens

en dat de SessionID steeds vervalt als je na 5 min niks doet enz.
dat snap ik wel, maar :

Ik weet dat je dat met SEO (.httacces) doet, weet iemand welke code dit is voor .httacces ik kom er echt niet uit :S

Wie kan mehelpen ?

groeten,
Kevin
Dit is niet echt SEO (Search Engine Optimization), maar gewoon urls rewriten.
Waarom wil je het op die 'nieuwe' manier hebben, de 'oude' manier is veel netter.
oh ik wou het gewoon een x testen, omdat ik die url zo vet vind :P
misschien klinkt het stom, maar wil vind het gewoon nice to see :)
Dat ligt aan je huidige configuratie. Is de url apps/CustomerService/ geldig? Zijn het niet 2 mappen?

Als het mappen zijn, kun je alleen iets bedenken zoals /apps/CustomerService/?etc
Anders kun je een nieuwe rewriteRule toevoegen in je .htaccess.

het zit zo

apps is een map

CustomerService is een file -> CustomerService.php

hoe zet ik in .htaccess die code (welke is dat) (heb gegoogled maar werd niet echt wijzer na 1 uur) voor de rewritereule ?
Je wil dus in plaats van /mijngegevens.php dit: ?SessionId=1029381029381209&cnode=mijn_gegevens ?

Ok ik zie de noodzaak niet perse maar wat je kunt doen is:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f


RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ CustomerService.php [NC,L]

in je .htaccess zetten

Op dit moment kun je neerkalken in je url wat je wil. Nu kun je met PHP afvangen welke statements gemaakt moeten worden. Het is niet de manier zoals die meestal wordt gebruikt, maar hier kun je wel mee uit de voeten denk ik.
dus zo kan ik de sessie aanroepen gevolgd door cnode met request url ?
Als je nu i je browser
CustomerService?SessionId=12091823091283012983&xnode=mijn_gegevens

typt, kun je die gewoon opvragen met PHP.

$customService = strrpos($_SERVER['PHP_SELF'], "CustomerService.php");

$dir = substr($_SERVER['PHP_SELF'],-0, $customService);
$node = str_replace($dir, "",$_SERVER['REQUEST_URI']);

$firstArg = trim($node, "?");
$lastArg = trim($node, "&");




[size=xsmall]Toevoeging op 06/08/2010 17:00:53:[/size]

Merijn Venema op 06/08/2010 16:59:23

Als je nu i je browser
CustomerService?SessionId=12091823091283012983&xnode=mijn_gegevens

typt, kun je die gewoon opvragen met PHP.

$customService = strrpos($_SERVER['PHP_SELF'], "CustomerService.php");

$dir = substr($_SERVER['PHP_SELF'],-0, $customService);
$node = str_replace($dir, "",$_SERVER['REQUEST_URI']);

$firstArg = trim($node, "?");
$lastArg = trim($node, "&");





edit:

Niet helemaal, normaal split ik het op de / maar omdat je nu met 2 verschillende tekens werkt ( ? en & ) moet je je $firstArg afvangen en trimmen tot en met de &

Reageren