Avatar billede clausga Nybegynder
05. januar 2005 - 15:06 Der er 6 kommentarer og
1 løsning

Indkøbskurv

Har lavet en indkøbs kurv i php/mysql der bliver lagt en cookie på maskine....indholdet vises så ud fra ip adressen og cookien er der.... og det virker også meget fint....

men problemet er ved skoler også hvor der er mange bag den samme ip og hvis der så er flere der går ind på siden og får lagt en cookie så kan alle jo se indholdet for den pågældende ip adresse..... hvad gør man i sådan en situation ????
Avatar billede rene_graff Nybegynder
05. januar 2005 - 15:12 #1
Det ved jeg ikke, jeg kunne bare godt tænke mig at lære at lave shoppen "bare"

Men har endnu ikke fået det lært:/
Avatar billede keysersoze Ekspert
05. januar 2005 - 15:12 #2
lad være med at bruge cookies - cookies er i langt de fleste henseender utrolig dårlige at bruge. Hvis du endelig skal gemme data i en variabel så brug en session i stedet - alternativt så gem i fx en database eller noget.

Hvis du bruger et sessionid kan du gemme indhold i hvad som helst udelukkende ud fra det sessionid - så kan der sidde uendeligt antal på samme IP uden problemer. Desuden er sessions også mere sikre end cookies.
Avatar billede clausga Nybegynder
05. januar 2005 - 15:24 #3
Hvordan bruger jeg sessions ??? gerne nogle kode eksempler tak! :)
Avatar billede keysersoze Ekspert
05. januar 2005 - 15:31 #4
jeg arbejde i ASP og ikke PHP så derfor er jeg ikke den store haj - men noget a la;

$_SESSION['minsession'] = "min værdi";
echo "SESSION['minsession']". $_SESSION['minsession'] ."<br />";
if ($_SESSION['minsession'] == "din værdi") {
echo "fejl"
} else {
echo "ok"
}

Men søg lidt på eksperten - der finder du masser af eksempler
Avatar billede saucer Nybegynder
06. januar 2005 - 13:54 #5
Hej

Jeg har selv en gang lavet en WebShop løsning hvor jeg brugte sessions til at holde styr på brugere som er ved at handle.

Det som jeg brugte var noget i stil med :

if(empty($_SESSION[user_session])){
   
    $user_session = substr(md5(uniqid(rand())), 0, rand(10, 20));
       
        $_SESSION[user_session] = $user_session;

}

Altså jeg opretter en session for hver bruger som kommer på siden med et tilfældig tal/bogstav navn som er fra 10 til 20 tegn. På den måde er jeg næsten sikker på at der ikke er to ens session på samme tid.

Husk også at slette data fra dit indkøbskurve efter XX min / timer så du minimere chancer for at der kommer en anden bruger 2 timer efter og få samme usernavn. For så vil han se indholdet af indkøbskurven som den anden bruger havde, hvis brugeren ikke bliv færdig med at handle ;)
Avatar billede saucer Nybegynder
15. januar 2005 - 12:41 #6
Hvad kom du frem til ?
Avatar billede saucer Nybegynder
15. januar 2005 - 13:42 #7
Uhh tak for 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