function dodaj_do_koszyka($id_produktu) { // sprawdzamy najpierw, czy uda nam się dodać produkt do koszyka if (sprawdz_czy_mozna_dodac($id_produktu) == TRUE) { // jeśli tak, przypisujemy dane do kolejnej pozycji w tablicy koszyka // sprawdzamy, czy już danego przedmiotu nie ma w koszyku. Jeśli jest, zwiększamy jego ilość w jednej ze zmiennych for ($i = 0; $i < sprawdz_liczbe_w_koszyku(); $i++) { if ($_SESSION['koszyk'][$i]['id_produktu'] == $id_produktu) { echo $_SESSION['koszyk'][$i]['ilosc']++; // jeśli tak, zwiększzamy jego ilość i wychodzimy z funkcji return TRUE; } } // odczytujemy ile jest w tablicy koszyk elementow. // liczba elementów jest zawsze większa o 1 od ostatniego indeksu // możemy użyć tej informacji i użyć liczby elementów jako następnego indeksu $indeks = sprawdz_liczbe_w_koszyku(); // zapytanie do bazy, by pobrac info o przedmiotach wrzucanych do koszyka $wynik = mysql_query("SELECT * FROM `produkty` WHERE id_produktu={$id_produktu}"); while ($r = mysql_fetch_assoc($wynik)) { // przypisujemy dane do zmiennych sesyjnych koszyka $_SESSION['koszyk'][$indeks]['id_produktu'] = $id_produktu; $_SESSION['koszyk'][$indeks]['nazwa'] = $r['nazwa']; $_SESSION['koszyk'][$indeks]['cena'] = $r['cena']; $_SESSION['koszyk'][$indeks]['ilosc'] = 1; // ETC ETC // mozemy dodać dalsze zmienne, jakie mają być przechowywane return TRUE; } } // gdy dodawanie się nie powiodło, zwracamy FALSE return FALSE; }
</thead> <tbody> <?php $adres_pliku = "?v=tresc/koszyk/duzy_koszyk"; for ($i = 0; $i < sprawdz_liczbe_w_koszyku(); $i++) { $przedmiot = $_SESSION['koszyk'][$i]; $usun = $adres_pliku . "&usun=" . $i; // adres do usuwania przedmiotu $dodaj = $adres_pliku . "&dodaj=" . $i; // adres do odejmowania przedmiotu $odejmij = $adres_pliku . "&odejmij=" . $i; // adres do dodawania przedmiotu // inteligentne przyciski // wyświetlamy zielony plusik, jeśli mozna dodać przedmiot if (sprawdz_czy_mozna_dodac($przedmiot['id_produktu'])) { $przycisk_dodaj = "<a href='{$dodaj}' type='button' class='btn btn-success'> + </a>"; } else { $przycisk_dodaj = "<a href='{$adres_pliku}' type='button' class='btn btn-default'> + </a>"; } // wyświetlamy czerwony minusik, jeśli możemy odjąć przedmiot if ($przedmiot['ilosc'] > 1) { $przycisk_odejmij = "<a href='{$odejmij}' type='button' class='btn btn-danger'> - </a>"; } else { $przycisk_odejmij = "<a href='{$adres_pliku}' type='button' class='btn btn-default'> - </a>"; } // wyświetlenie tabeli z całym koszykiem $link_do_produktu = "?v=tresc/karta_produktu/karta_produktu&id_produktu={$przedmiot['id_produktu']}"; echo '<tr>'; echo "<td>{$przedmiot['id_produktu']}</td>"; echo "<td><a href='{$link_do_produktu}'>{$przedmiot['nazwa']}</a></td>";