Oprettet tir. d. 10. juli 2012 kl. 13:17:32

morticms
morticms (1.950 point. Point ude: 60)

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

Skrevet tir. d. 10. juli 2012 kl. 13:45:20| #1

balcom
balcom (2.020 point)
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($...

Skrevet tir. d. 10. juli 2012 kl. 13:54:55| #2

morticms
morticms (1.950 point)
Hej

Hvis jeg fjerner det, kommer der ikke til at stå vares navn.

Skrevet tir. d. 10. juli 2012 kl. 18:26:24| #3

Temp_dk
Temp_dk (7.005 point)
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']

Skrevet tir. d. 10. juli 2012 kl. 18:42:06| #4

morticms
morticms (1.950 point)
$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)

Skrevet tir. d. 10. juli 2012 kl. 19:13:44| #5

Temp_dk
Temp_dk (7.005 point)
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

Skrevet tir. d. 10. juli 2012 kl. 20:18:06| #6

morticms
morticms (1.950 point)
Det virker fuldstændig som det skal nu.
1000 tak for hælpen endnu engang.

Med venlig hilsen
Morten Møller

Skrevet tir. d. 10. juli 2012 kl. 21:15:33| #7

morticms
morticms (1.950 point)
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.

Skrevet ons. d. 11. juli 2012 kl. 07:02:12| #8

Temp_dk
Temp_dk (7.005 point)
Vil du vise den kode du bruger til dette ?

Skrevet ons. d. 11. juli 2012 kl. 09:51:18| #9

morticms
morticms (1.950 point)
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.

Skrevet ons. d. 11. juli 2012 kl. 21:19:45| #10

Temp_dk
Temp_dk (7.005 point)
prøv

// Tilføjer total antal til $_SESSION['total']
$_SESSION['total'] = mysql_num_rows($rsVare_Salg);

Skrevet tor. d. 12. juli 2012 kl. 17:28:49| #11

morticms
morticms (1.950 point)
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...

Skrevet tor. d. 27. september 2012 kl. 10:12:55| #12

morticms
morticms (1.950 point)
Jeg lukker problemet her.

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   


Seneste spørgsmål

Hurtig hjælp til "en til mange" relation

Oprettet den 13. juni 2013 kl. 17.58
jcl94 giver 30 point for svar | Giv et svar »

Hente data til variabel

Oprettet den 13. juni 2013 kl. 17.14
vovsegris giver 60 point for svar | Giv et svar »

Mysql til at styre indholdet via menuen med php.

Oprettet den 13. juni 2013 kl. 13.08
bing89 giver 60 point for svar | Giv et svar »







IT Kurser
Samarbejdspartnere

Udgiver · © 2013 Computerworld A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger