skanuj0537

skanuj0537



558 PHP i MySQL dla każdego

}

else if($ P0ST[$key] < 1){ unset($_SESSI0N['koszyk'][$key]);

}

else{

$ SESSION['koszyk'][$key] = $_P0ST[$key]:

}

}

}

Funkcja przegląda w pętli foreach wszystkie wpisy w tablicy koszyk i sprawdza, czy istnieje korespondujący wpis w tablicy $_P0ST. Jeśli nie istnieje, dana pozycja jest usuwana z koszyka. Jeśli natomiast w tablicy $_P0ST znajduje się klucz o takim samej wartości, jak wpis w tablicy koszyk, jest sprawdzana jego wartość. Kiedy wartość ta jest mniejsza od 1, oznacza to, że dana książka ma zostać usunięta z koszyka, jest więc usuwany wpis z tablicy koszyk. W przypadku gdy wartość klucza w tablicy $_P0ST jest większa od 0, oznacza to, że jest ona aktualną liczbą zamówionych egzemplarzy danej książki, musi być więc zapisana w tablicy koszyk.

Obsługa zamówień

Skoro funkcje obsługujące koszyk sąjuż gotowe, możemy przystąpić do napisania kodu zajmującego się obsługą zamówień. Będą to funkcje checkout oraz saveorder. Zadaniem pierwszej z nich jest sprawdzenie, czy mamy do czynienie z załogowanym użytkownikiem i wyświetlenie podsumowania zamówienia, natomiast zadaniem drugiej jest zapisanie zamówienia do bazy danych. Kod funkcji checkout został zaprezentowany na listingu 21.12. Z kolei przykładowy wygląd generowanego przez nią podsumowania zmówienia jest widoczny na rysunku 21.9.

Listing 21.12. Kod funkcji checkout function checkoutO {

i f(!i sSet($_SESSI0N['Userld' ])){ echo("<h3 align='center’> Aby złożyć zamówienie muszisz być "): echo("<a href='main.php?action=slf'> zalogowany</a>.<br>"); echoCJeśli nie masz jeszcze konta w naszym serwisie. "): echo(''<a href-'main.php?action=srf'>załóż je teraz</a>.<h3>”>: return;

}

if(!isSet($ SESSIONC'koszyk'])){ $ SESSION?'koszyk'] = arrayO;

}

if(count($_SESSI0N['koszyk']) < 1){ echo("<p align-’center'>Koszyk jest pusty</p>"): return true:


Wyszukiwarka

Podobne podstrony:
76211 skanuj0379 (2) 394 PHP i MySQL dla każdego} else if($val ~ BAD_USER_PASS_LENGTH){ echoCHasło m
62623 skanuj0390 (2) 406 PHP i MySQL dla każdego else if(strpos($browser_info. "konqueror"
48202 skanuj0467 (2) 484 PHP i MySQL dla każdego} else if($_GET[ action ] = vote ){ i f (! i sSet (
37923 skanuj0055 (56) PHP i MySQL dla każdego } else{if (warunek3){ instrukcjeS: ) else{instrukcje4:
skanuj0361 (3) 376 PHP i MySQL dla każdego else{ echo("Niepoprawne dane!"): } <br> &
skanuj0361 (3) 376 PHP i MySQL dla każdego else{ echo("Niepoprawne dane!"): } <br> &
skanuj0511 532 PHP i MySQL dla każdego else i f($_GET[ action ] = checkout ){ include
64505 skanuj0465 482 PHP i MySQL dla każdego} else{ echo("<a

więcej podobnych podstron