Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> koszyk na zakupy na sesjach, nie działa przy register_globals = off
Olimpia_ona
post
Post #1





Grupa: Zarejestrowani
Postów: 71
Pomógł: 2
Dołączył: 10.03.2005
Skąd: Elbląg

Ostrzeżenie: (0%)
-----


Witam,
pisałam już kiedyć o koszyku. Wszystkie problemy z nim związane rozwiązałam i wydawało mi się, że już wszystko jest ok, ale zapomniałam zmienić ustawień serwera na register_globals = off, po tej zmianie nie trzyma mi tego koszyka. Nie pamięta zmiennej $stan, co wydaje się być logiczne, ale teraz proszę o pomoc, co muszę zrobić, by jednak ten koszyk działał z register_globals = off.

Fragment jak mam to zrobione:
  1. <?php
  2. ...
  3. $koszyk=$_SESSION['koszyk'];
  4. $dodaj=$_GET['dodaj'];
  5. $usun=$_GET['usun'];
  6. $zmien=$_GET['zmien'];
  7. $first=$_GET['first'];
  8. ...
  9. class koszyk 
  10. { 
  11. /* tablica asocjacyjna zawierajaca stan koszyka */ 
  12. /* klucz, to wartosc id produktu, wartosc to ilosc elementow */ 
  13. var $zawartosc; 
  14.  
  15. function dodaj($element, $ilosc) 
  16. { 
  17. $this->zawartosc[$element] += $ilosc; 
  18. } 
  19.  
  20. function usun($element, $ilosc) 
  21. { 
  22. if ($this->zawartosc[$element] > $ilosc) 
  23. $this->zawartosc[$element] -= $ilosc; 
  24. else 
  25. unset($this->zawartosc[$element]); 
  26. } 
  27.  
  28. function zmien($element, $ilosc) 
  29. { 
  30. $this->zawartosc[$element] = $ilosc; 
  31. } 
  32.  
  33. function stan() 
  34. { 
  35. return $this->zawartosc; 
  36. } 
  37. } 
  38.  
  39. if (!$koszyk) 
  40. $koszyk = new koszyk; 
  41. ...
  42. if ($dodaj) 
  43. $koszyk->dodaj($dodaj1, 1); //dodaj($element, $ilosc) - dodaje $ilosc $elementow do koszyka
  44. ...
  45. session_register('koszyk');
  46.  
  47. $stan = $koszyk->stan(); //zwraca zawartosc w postaci hasza
  48. ...
  49. //i wyświetlanie koszyka
  50. if ($stan) 
  51. {
  52.  $ilewkosz=0;
  53.  while (list($key, $value) = each($stan))
  54.  { 
  55.  echo "produkt: $key ilość:$value<br />";
  56.  }
  57. }
  58. ?>


próbowałam robić coś w stylu:
$stan=$_SESSION['stan'];
session_register("stan");

ale to nie pomogło.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.12.2025 - 21:33