Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Problem z funkcją usuwającą lub wyświetlającą zawartość koszyka.
tonapewno
post
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 5.11.2009

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


funkcja wyświetlająca 2:
  1. function showitem2()
  2. {
  3. $ilosc = count($_SESSION['koszyk']);
  4. if ($_SESSION['koszyk'] === NULL)
  5. {
  6. echo "Koszyk być pusty";
  7. } else {
  8. while(list($key, $val) = each($_SESSION['koszyk']))
  9. {
  10. echo $val."<br />";
  11. echo '<a href=?function=del&items='.$val.'>Usun</a><br />';
  12. }
  13. }
  14. }

funkcja wyświetlająca 1:
  1. function showitem(){
  2. $ilosc = count($_SESSION['koszyk']);
  3. if (($_SESSION['koszyk'] === NULL) OR ($_SESSION['koszyk'] === 0)){
  4. echo "Koszyk jest pusty!";
  5. } else {
  6. for ($i = 0; $i < $ilosc; $i++)
  7. {
  8. echo $_SESSION['koszyk'][$i]."<br />";
  9. echo '<a href=?function=del&items='.$_SESSION['koszyk'][$i].'>Usun</a><br />';
  10. }
  11. echo $ilosc;
  12. }
  13. }

funkcja usuwająca:
  1. function delitem($item)
  2. {
  3. $cart = $_SESSION['koszyk'];
  4. $sum = count($_SESSION['koszyk']);
  5.  
  6. if (in_array($item, $cart))
  7. {
  8. for ($i = 0; $i < $sum; $i++)
  9. {
  10. if ($_SESSION['koszyk'][$i] == $item)
  11. {
  12. unset($_SESSION['koszyk'][$i]);
  13. echo "Usunięto ".$item;
  14. }
  15. }
  16. } else {
  17. echo "Nie ma ".$item." w koszyku!";
  18. }
  19. }


problem jest taki: gdy mam tablice ($_SESSION['koszyk']) z kilkoma rzeczami w koszyku, np. ziemniak, ogorek, salata, kapusta, arbuz, rzodkiewka to w momencie gdy chce usunąć wszystkie pojedynczo(mam też funkcję opróżniającą cały koszyk, ale nie w tym rzecz) to niestety pojawia się problem, bo nie wszystkie elementy dają się usunąć. Przedstawię to graficznie może będzie lepiej zrozumiałe:
[] pusta tablica
[ziemniak, ogorek, salata, kapusta, arbuz, rzodkiewka] tablica po wyświetleniu jej oboma funkcjami (showitem(), showitem2())po dodaniu kilku elementow,
[ , , ] tablica po usunięciu elementów i wyświetleniu jej za pomocą showitem(),
[ogorek, kapusta, rzodkiewka] tablica po usunięciu elementów i wyświetleniu jej za pomocą showitem2(),

mniej więcej to się przedstawia tak. Możecie pomóc? Byłbym wdzięczny.

Ten post edytował tonapewno 6.08.2010, 13:24:32
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: 24.08.2025 - 01:31