10. juli 2012 - 13:17
Der er
11 kommentarer og 1 løsning
Forsøger at få flere vare i min session
Hej Eksperter Jeg har forsøgt i noget tid forgæves at få flere vare i min session. Jeg kan bare ikke få flere ind, når jeg trykke den sidste ind er det kun der kommer. Har kigget mig godt omkring på siden men kan ikke få den til at virke som den skal. Koden jeg bruger er: session_start(); $vare = $row_rsVare_Salg['vare']; $varenr = $row_rsVare_Salg['varenr']; $antal = $row_rsVare_Salg['antal']; $pris = $row_rsVare_Salg['pris']; $id = $row_rsVare_Salg['id']; $_SESSION['vare'] = $vare; $_SESSION['varenr'] = $varenr; $_SESSION['antal'] = $antal; $_SESSION['pris'] = $pris; $_SESSION['id'] = $id; if(isset($row_rsVare_Salg['id'])){ if(!isset($_SESSION['id'])){ $_SESSION['vare']=array(); } if(isset($_SESSION['vare'][$row_rsVare_Salg['id']])){ $_SESSION['vare'][$row_rsVare_Salg['id']]++; } else { $_SESSION['vare'][$row_rsVare_Salg['id']]=1; } } else { echo "Fejl: Ingen varenr"; } Håber der er en der kan finde problemet. Med venlig hilsen Morten Møller
Annonceindlæg fra HP
Helt ærligt, så har jeg ikke check på programmering, men syntes bare at det ser "forkert" ud når først står : if(isset($... og næste gang : if(!isset($.... (udråbstegnet) og sidst, igen : if(isset($...
Hej Hvis jeg fjerner det, kommer der ikke til at stå vares navn.
Spørgsmål Er $row_rsVare_Salg['vare'] et array ? eller mere uddybende Hvilke type er følgende $row_rsVare_Salg['vare'] $row_rsVare_Salg['varenr'] $row_rsVare_Salg['antal'] $row_rsVare_Salg['pris'] $row_rsVare_Salg['id']
$row_rsVare_Salg['vare'] er min måde at få min data fra min database. og så har jeg lavet dem om så de ført ind i min SESSION. Og det virker fint. Men kan ikke få flere ind. $row_rsVare_Salg['vare'] / Varens navn $row_rsVare_Salg['varenr'] / et varenr $row_rsVare_Salg['antal'] / antal af vare $row_rsVare_Salg['pris'] / Pris $row_rsVare_Salg['id'] / id (Varens id)
Eksempel $row_rsVare_Salg['vare'] = "Bøffer"; $row_rsVare_Salg['varenr'] = 123456; $row_rsVare_Salg['antal'] = 25; $row_rsVare_Salg['pris'] = 12.23; $row_rsVare_Salg['id'] = 2; // Opretter SESSIONS variabel vare som et array $_SESSION['vare'] = $row_rsVare_Salg; if(isset($row_rsVare_Salg['id'])) { if(!isset($_SESSION['vare'])) { $_SESSION['vare'] = array(); } if(isset($_SESSION['vare'])) { $_SESSION['vare']['antal'] ++; } else { $_SESSION['vare']['antal'] = 1; } } else { echo "Fejl: Ingen varenr"; } Resultatet af ovenstående er: Debug #1 af 1 Variabel navn: $_SESSION Variabel type: array array (1) vare => array (5) vare => Bøffer varenr => 123456 antal => 26 pris => 12.23 id => 2
Det virker fuldstændig som det skal nu. 1000 tak for hælpen endnu engang. Med venlig hilsen Morten Møller
Jeg kom til at se den laver alt fra databasen. Og den ligge ikke de to ting, jeg prøver at ligge ind i session. Kun den sidste jeg ligger ind i min session.
Vil du vise den kode du bruger til dette ?
mysql_select_db($database_hellestrik, $hellestrik); $query_rsVare_Salg = sprintf("SELECT * FROM vare WHERE id = %s", GetSQLValueString($colname_rsVare_Salg, "int")); $rsVare_Salg = mysql_query($query_rsVare_Salg, $hellestrik) or die(mysql_error()); $row_rsVare_Salg = mysql_fetch_assoc($rsVare_Salg); $totalRows_rsVare_Salg = mysql_num_rows($rsVare_Salg); /* Tilføj en vare til kurv Modtager vareid som $_GET['vareid'] Lægger 1 til $_SESSION['varer']['vareid'] */ { session_start(); $vare = $row_rsVare_Salg['vare']; $varenr = $row_rsVare_Salg['varenr']; $antal = $row_rsVare_Salg['antal']; $pris = $row_rsVare_Salg['pris']; $id = $row_rsVare_Salg['id']; $_SESSION['vare'] = $row_rsVare_Salg['vare']; $_SESSION['varenr'] = $row_rsVare_Salg['varenr']; $_SESSION['antal'] = $row_rsVare_Salg['antal']; $_SESSION['pris'] = $row_rsVare_Salg['pris']; $_SESSION['id'] = $row_rsVare_Salg['id']; // Opretter SESSIONS variabel vare som et array $_SESSION['vare'] = $row_rsVare_Salg; if(isset($row_rsVare_Salg['id'])) { if(!isset($_SESSION['vare'])) { $_SESSION['vare'] = array(); } if(isset($_SESSION['vare'])) { $_SESSION['vare']['antal'] ++; } else { $_SESSION['vare']['antal'] = 1; } } else { echo "Fejl: Ingen varenr"; } } Tak for du vil brug din tid, til at hjælpe mig.
11. juli 2012 - 21:19
#10
prøv // Tilføjer total antal til $_SESSION['total'] $_SESSION['total'] = mysql_num_rows($rsVare_Salg);
12. juli 2012 - 17:28
#11
Den gør desværre ikke nogen forskel. session_start(); $vare = $row_rsVare_Salg['vare']; $varenr = $row_rsVare_Salg['varenr']; $antal = $row_rsVare_Salg['antal']; $pris = $row_rsVare_Salg['pris']; $id = $row_rsVare_Salg['id']; $_SESSION['vare'] = $row_rsVare_Salg['vare']; $_SESSION['varenr'] = $row_rsVare_Salg['varenr']; $_SESSION['antal'] = $row_rsVare_Salg['antal']; $_SESSION['pris'] = $row_rsVare_Salg['pris']; $_SESSION['id'] = $row_rsVare_Salg['id']; // Tilføjer total antal til $_SESSION['total'] $_SESSION['total'] = mysql_num_rows($rsVare_Salg); // Opretter SESSIONS variabel vare som et array $_SESSION['vare'] = $row_rsVare_Salg; if(isset($row_rsVare_Salg['id'])) { if(!isset($_SESSION['vare'])) { $_SESSION['vare'] = array(); } if(isset($_SESSION['vare'])) { $_SESSION['vare']['antal'] ++; } else { $_SESSION['vare']['antal'] = 1; } } else { echo "Fejl: Ingen varenr"; } Jeg prøvede at sætte [total] ved siden af [antal] men så kom den med denne meddelse: Fatal error: Cannot increment/decrement overloaded objects nor string offsets in...
27. september 2012 - 10:12
#12
Jeg lukker problemet her.
Computerworld tilbyder specialiserede kurser i database-management