Sessions of cookies

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

- Raoul -

- Raoul -

26/04/2012 19:56:10
Quote Anchor link
Ik ben nu aan het twijfelen of ik de userid van de session in een cookie of in een session stop.

Cookie lijkt me wel handig aangezien dit ook op subdomeinen werkt en dat je zelf kiest hoe lang je ingelogd blijft.

Wat wel een nadeel is dat je cookies gewoon kunt aanpassen en kijken welke value dat heeft, of ik moet het beveiligen met een algoritme, maar als dat algoritme uitlekt is dan weer heel het systeem lek...

Wat zouden jullie doen?
 
PHP hulp

PHP hulp

03/03/2024 17:40:29
 
Q S

Q S

26/04/2012 20:20:52
Quote Anchor link
Session
 
Erwin H

Erwin H

26/04/2012 21:18:19
Quote Anchor link
Session, voornamelijk ook omdat ik (behalve de noodzakelijke session cookie zelf) geen gebruik wil maken van cookies. Buiten natuurlijk veiligheid.
 
Henk PHP

Henk PHP

26/04/2012 21:25:48
Quote Anchor link
Een sessie gebruikt een cookie om de sessie te onthouden, dus eigenlijk gebruik je dan allebei. Dus ik vind de vraag nogal raar
 
Erwin H

Erwin H

26/04/2012 21:29:08
Quote Anchor link
Nou, het is nogal een verschil of je de userid in de sessie opslaat, of in de cookie. Dat hoeft toch niet te worden uitgelegd, mag ik hopen....?
 
Jens erd

Jens erd

26/04/2012 21:33:41
Quote Anchor link
@simon

Een cookie geeft aan welke sessie bij welke gebruiker hoort, niet wat er in die sessies staan. de inhoud van sessies zijn dus, in tegenstelling tot cookies, voor de eindgebruiker niet zichtbaar.

@ts gebruik sessies, kijk eens hier als je het ook over subdomeinen wil gebruiker.
 
Marco PHPJunky

Marco PHPJunky

26/04/2012 21:38:53
Quote Anchor link
Sessions!

voor het gebruiken van de session op subdomains kan je eventueel kijken naar session cookies / session.cookie_domain..

of gebruik maken van een eigen session wrapper...
Gewijzigd op 26/04/2012 21:41:58 door Marco PHPJunky
 
Eddy E

Eddy E

26/04/2012 21:42:22
Quote Anchor link
En voor het gebruik van cookies moet in Nederland VOORAF toestemming gegeven worden voor gebruik.

Officieel dan.
 
Henk PHP

Henk PHP

26/04/2012 21:42:28
Quote Anchor link
Jens erd op 26/04/2012 21:33:41:
@simon

Een cookie geeft aan welke sessie bij welke gebruiker hoort, niet wat er in die sessies staan. de inhoud van sessies zijn dus, in tegenstelling tot cookies, voor de eindgebruiker niet zichtbaar.
Precies, daarom lijkt het mij ook duidelijk welke van de twee je het beste kunt gebruiken.
 
Erwin H

Erwin H

26/04/2012 21:44:48
Quote Anchor link
Waarom zeg je dan eerst dat cookies ook gebruikt worden bij sessies? Dat is totaal irrelevant in dit geval.
 
Henk PHP

Henk PHP

26/04/2012 21:48:50
Quote Anchor link
Omdat het nogal een rare vraag is.
 
- Raoul -

- Raoul -

26/04/2012 21:52:53
Quote Anchor link
Ik heb nu toch gevonden hoe je sessions laat werken op subdomeinen met deze code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$userId
= session_name("naam");
session_set_cookie_params(0, '/', '.site.nl');

session_start() or die('Kon geen sessie starten.');
?>
Gewijzigd op 26/04/2012 22:54:29 door - Raoul -
 
Michel DS

Michel DS

27/04/2012 07:27:53
Quote Anchor link
Ikzelf heb me ook deze vraag gesteld. In ASP vroeger gebruikte ik cookies voor de meeste userdetails behalve paswoorden.

Nu heb ik reeds zo'n 13 sessies aan te maken met websitedetails per gebruiker betreft configuratie ervan.
Of raden jullie mij aan om steeds bij ELKE pagina dat wordt ingeladen steeds de info uit de database te halen ?(en dus vele malen een DB-connectie te openen )
 
- Raoul -

- Raoul -

27/04/2012 08:09:34
Quote Anchor link
Het enige wat je in zo'n session moet stoppen is een userid en niks meer.
 
Michel DS

Michel DS

27/04/2012 08:14:33
Quote Anchor link
tja dan maar met cookies. Ik kan toch niet elke keer een DB-connectie maken hiervoor !
 
Wouter J

Wouter J

27/04/2012 09:06:47
Quote Anchor link
Je hoeft als het goed is maar 1 keer per pagina aanroep een DB connectie te maken, dus vele keren is een beetje vreemd.

Verder wordt in zo'n beetje elke dynamische website een DB connectie gemaakt per pagina, dus zo vreemd is het niet. Het is zelfs goed om en iets in de DB en iets in een sessie te stoppen.

Raoul, die 'or die' hoort daar natuurlijk niet thuis...
 
Jens erd

Jens erd

27/04/2012 12:07:00
Quote Anchor link
Sowieso nooit deze gegevens in een cookie gooien, dat vraagt om diefstal van deze gegevens. haal de gegevens uit een database en gooi de data waarvan je weet dat je het vaak gaat hergebruiken in een sessie.
 
Jeroen VD

Jeroen VD

27/04/2012 14:17:04
Quote Anchor link
En als je het dan toch helemaal veilig te maken zet je in die sessie een array met het id, en het IP. Wanneer je de sessie dan raadpleegt, controleer je het ip uit de session met het ip van de bezoeker. Zo weet je zeker dat degene die was ingelog nog steds ingelogd is, in ieder geval op dezelfde computer.
 
Kris Peeters

Kris Peeters

27/04/2012 14:33:05
Quote Anchor link
Dat er bij elke klik (op gelijk wat van een website) een aantal gegevens uit een DB moet worden gelezen, is geen probleem.

Kijk maar eens naar de linkerkant van deze website, naar
"Actief op PHPhulp", "Laatste forum berichten", ...

Dit wordt nergens gecache't. Elke keer je ergens op klikt, wordt dat opnieuw berekend, op basis van gegevens die in een db staan.

Wat dit betreft, lijkt het me interessant om al die informatie in de DB bij te houden.

Als je hier van uit gaat...
Je kan een unieke code zetten in een veld in de db. Uniek, dus bruikbaar als id.
Als je dat random laat genereren, kan een hacker ook niet zomaar de zelfde id +1 uitproberen.

Wat blijft er dan nog over van de vraag?
zowel cookie als session hebben enkel die ene code nodig om alle settings te lezen.

Het lijkt me dat je dan simpelweg kiest voor
cookie => de gegevens moeten bewaard blijven, als de gebruiker de webbrowser sluit en opnieuw opent.
sessie => de gegevens blijven bewaard zolang de gebruiker de webbrowser open laat.
Gewijzigd op 27/04/2012 14:34:13 door Kris Peeters
 
Chris PHP

Chris PHP

02/05/2012 09:33:18
Quote Anchor link
Michel DS op 27/04/2012 07:27:53:
Nu heb ik reeds zo'n 13 sessies aan te maken met websitedetails per gebruiker betreft configuratie ervan.


13 sessies of 13 sessie variabelen?

Waarom heb je in vredesnaam 13 verschillende gegevens nodig van een gebruiker over de gehele site? Ik kan me iets voorstellen als je naar zijn persoonlijke instellingen of iets dergelijks gaat maar anders kan ik er weinig nut in zien eerlijk gezegt.

Ik probeer het meestal tot een maximum van 5 variabelen te houden, puur voor het feit dat je straks bij god niet meer weet welke variabelen nu ook al weer wat inhouden als je met zulke aantallen werkt.

Ik vind dat nog steeds de key voor programmeren simpel en netjes is, houdt het zo simpel mogelijk waar dit kan. Bijvoorbeeld als je een ww wilt beveiligen, ga dan niet eerst $pw = $_POST['pw'}; $md5pw = md5 ($pw) doen maar pak het samen in 1 zoals $md5pw = md5 ($_POST['pw']);.

Klinkt logisch maar je wilt niet weten hoeveel mensen dit niet doen en een 'simpele' code zo veel regels en declaraties in beslag laten nemen dat je er de slappe lach van krijgt. Tevens neemt al die declaraties ook veelste veel resources van je sever in beslag.

En gebruik maken van een DB voor zoveel specifieke gegevens lijkt me wel slim idd, nogmaals ik kan me geen situatie indenken waar je 13 verschillende gebruikers gegevens op elke pagina van je website nodig hebt.
 
Ozzie PHP

Ozzie PHP

02/05/2012 09:46:22
Quote Anchor link
Is het eigenlijk slim om iemands (gebruikers)naam in een sessie op te slaan? Dus is het slim om in een sessie bestand als naam "Ozzie PHP" op te slaan?

Enerzijds zou ik zeggen dat het slim is, zodat je de naam niet op iedere pagina uit de database hoeft te halen, maar van de andere kant... mocht iemand een sessie-bestand hacken, dan weet men wie de persoon is die daarbij hoort.

Dus wat is handiger: de naam opslaan in de sessie en daarmee database aanroepen besparen, of de naam telkens uit de database halen?
 

Pagina: 1 2 volgende »



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.