19. juli 2006 - 10:42Der er
11 kommentarer og 1 løsning
PHP: indkøbskurv, hvordan?
Jeg er ved at lave et shoppingsystem hvortil der også skal være en indkøbskurv.
Jeg har tænkt mig at lave kurvens indhold, altså varerne i sessions. Er det ikke det nemmeste?
Men hvordan er det bedst at lave disse sessions. Skal jeg f.eks. når den første varer lægges i, lave en session der hedder shop001 f.eks. med værdien 24 (=id på varen), anden gang der lægges noget i shop002 f.eks. 31. Dertil skal så laves shopnum01 som angiver hvor mange antal? Har tænkt på, om der er en nemmere måde?
En anden mulighed er at registrere dem med shop024 med værdien 2 (=2 stk). Men så skal man køre hele databasen med varer igennem når man skal "scanne" indkøbskurven!? Er det godt eller skidt?
Jeg har nu følgende kode, som jeg bruger til at tilføje varer i min indkøbskurv: $article = array('id' => $_GET['id'],'num' => $_GET['num']); array_push($_SESSION['basket'],$article);
Det fungerer præcis som det skal, men har nu brug for en lille funktion.
Jeg vil gerne vide, om der i forvejen eksisterer en varer med id=$_GET['id'] i min session, inden jeg tilføjer den til array'et. Fidusen er, at hvis varen i forvejen eksisterer i min session, skal num adderes med 1 (altså num++) istedet for at varen tilføjes igen.
Er det nogen du kan hjælpe mig et hint til?
Derudover skal jeg også bruge en funktion som kan slette den række i arrayet som f.eks. har id=5. Håber igen, at det er noget du kan hjælpe med?
På forhånd tak.
Jeg har ingen point på min eksperten konto lige nu - men vi lader dette spørgsmål stå åbent og så kan du få nogle flere point når jeg har nogle :)
Den anden måde, med en for-løkke, fungerer egentligt lige så godt, da jeg i forvejen skal hende nummeret på rækken i arrayet for at kunne ændre num i rækken.
Jeg har fået lavet nogle scripts som virker - vil du smide et svar?
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.