Avatar billede artico Novice
04. marts 2006 - 15:09 Der er 13 kommentarer og
1 løsning

udskrive session

Jeg har følgende:
if( isset($_SESSION['shopcart']) ) {
  $ids = array_keys($_SESSION['shopcart']);

  $sql = "SELECT id, varenavn FROM vare WHERE id IN (" . join(',',$ids) . ") ORDER BY varenavn";
  $res = mysql_query($sql);
  while($row = mysql_fetch_row($res)) {
 
    echo "<pre>";
print_r($row);
echo "</pre>";
    print stripslashes($row['varenavn']) . ': ' . $_SESSION[$row['id']] . ' stk<br/>';
  }
}
else {
  print "Tom";
}

Men der udskrives kun dette  : stk

Men i arrayet er der det der skal være, nemlig:


Array
(
    [0] => 17
    [1] => Kalvesteg
)

Hvordan får jeg det rigtigt ud i sætnigen:
  print stripslashes($row['varenavn']) . ': ' . $_SESSION[$row['id']] . ' stk<br/>';
Avatar billede coderdk Praktikant
04. marts 2006 - 16:52 #1
print stripslashes($row['varenavn']) . ': ' . $_SESSION['shopcart'][$row['id']] . ' stk<br/>';

Ligger det ikke i 'shopcart' ?
Avatar billede artico Novice
04. marts 2006 - 17:15 #2
jo det gør det
Avatar billede coderdk Praktikant
04. marts 2006 - 17:17 #3
Virker det, jeg har skrevet så? (Jeg tilføjede ['shopcart'])
Avatar billede artico Novice
04. marts 2006 - 17:21 #4
Nej :-( Den udskriver kun et kolon og ordert stk som her : stk
Avatar billede coderdk Praktikant
04. marts 2006 - 17:23 #5
Prøv lige at lave en:

echo "<pre>"; var_dump( $_SESSION ); echo "</pre>";

Så kan du se hvad der er i din session ;)
Avatar billede artico Novice
04. marts 2006 - 17:27 #6
Øhh i mit $row ligger
varenummer og varenavn som her
Array
(
    [0] => 23
    [1] => Chateauneuf du Pape
)

og i session ligger antal

Array
(
    [23] => 1
    )
Avatar billede coderdk Praktikant
04. marts 2006 - 17:31 #7
Ja, det ser underligt ud - Hvis det ser sådan ud, så forstår jeg ikke at din $ids = array_keys($_SESSION['shopcart']); virker, for den burde da blot være $ids = array_keys($_SESSION);
Så det komplette eksempel skulle være:

if( isset($_SESSION) ) {
  $ids = array_keys($_SESSION);

  $sql = "SELECT id, varenavn FROM vare WHERE id IN (" . join(',',$ids) . ") ORDER BY varenavn";
  $res = mysql_query($sql);
  while($row = mysql_fetch_row($res)) {

    echo "<pre>";
print_r($row);
echo "</pre>";
    print stripslashes($row['varenavn']) . ': ' . $_SESSION[$row['id']] . ' stk<br/>';
  }
}
else {
  print "Tom";
}
Avatar billede artico Novice
04. marts 2006 - 17:38 #8
Øv, nu viser den ingenting :-( heller ikke at den er TOM...
Avatar billede coderdk Praktikant
04. marts 2006 - 17:45 #9
Underligt ;P
Avatar billede artico Novice
04. marts 2006 - 18:33 #10
Jeg echoer bare sådan:
echo "varenummer: $row[0] ";
echo "varenavn: $row[1]<br>";

Men hvordan echoer jeg denne session:

array(1) {
  ["shopcart"]=>
  array(1) {
    [20]=>
    int(4)
  }
}

Det er int(4) som jeg vil have fat i :-)
Avatar billede artico Novice
04. marts 2006 - 20:11 #11
Lukker her...
Avatar billede coderdk Praktikant
04. marts 2006 - 20:24 #12
Ja, det 4, skulle du have fat på med $_SESSION['shopcart'][20]
Avatar billede artico Novice
04. marts 2006 - 20:29 #13
Jeeeeees nu virker det.. jeg skulle dog lave den som denne:
echo $_SESSION['shopcart'][$row['0']];

Men i min utålmodighed oprettede jeg et nyt spørgsmål,, så hvis du gider at gå ud og sende et svar så får du pointene :-)
Avatar billede coderdk Praktikant
04. marts 2006 - 20:31 #14
Altså lidt som jeg skrev i min første comment her?

Kommentar: coderdk
04/03-2006 16:52:21

print stripslashes($row['varenavn']) . ': ' . $_SESSION['shopcart'][$row['id']] . ' stk<br/>';

:)
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