Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zapamiętanie stanu magazynowego
Forum PHP.pl > Forum > Przedszkole
folt3k
Właśnie jestem na etapie nauki klass w PHP i stworzyłem sobie taki mały projekt, w którym po wpisaniu danej wartość do pola 'ilosc', wartosc stanu magazynowego zostaje zmiejszona. Jednakże chciałbym pójść o krok dalej i stworzyć taki skrypt, który będzie zapamiętywał wcześniej odjęte wartości w polu 'ilosc'.

Wiem, że powinienem użyć sesji, ale nie bardzo wiem gdzie dokładnie to wstawić. Mógłby ktoś mi poradzić?

  1. <?php
  2.  
  3. echo '<form action="" method="get">
  4. Ilosc produktow do wydania: <input name="ilosc" type="text"><br />
  5. <input name="submit" type="submit" value="Wydaj produkty">
  6. </form>';
  7.  
  8. $ilosc = $_GET['ilosc'];
  9.  
  10.  
  11. class Products {
  12.  
  13. public $name;
  14. public $price;
  15. public $stock;
  16.  
  17. public function construct ($in_name, $in_price, $in_stock) {
  18.  
  19. $this->name = $in_name;
  20. $this->price = $in_price;
  21. $this->stock = $in_stock;
  22. }
  23.  
  24. public function getStock() {
  25. return $this->stock;
  26. }
  27.  
  28. public function reserveProducts($ilosc) {
  29. return $this->stock -= $ilosc;
  30. }
  31. public function getNameProduct() {
  32. return $this->name;
  33. }
  34.  
  35. }
  36.  
  37. $object = new Products;
  38. $object->construct("<b> Mleko</b>", 4, 200);
  39.  
  40. if (!empty($ilosc)) {
  41. echo "Wydales: ".$ilosc." sztuk produktu ".$object->getNameProduct()." <br />";
  42. }
  43. echo "Aktualny stan magazynowy produktu ".$object->getNameProduct()." wynosi: ".$object->reserveProducts($ilosc)." sztuk";
  44.  
  45.  
  46. ?>
timon27
Ucz sie od razu mysql.
To na prawdę nie jestr skomplikowane a znacznie ułatwi ci zadania takie jak to.
Po pierwsze: czy tylko użyszkodnik ma znać wartości stany magazynowego? jeśli nie to sesje nie będą użyteczne.
Po drugie: użyszkodnik przesiądzie się na inny komputer i nie ma swojej pracy - a jeśli zrobisz mu konto to będzie miał dostęp zewsząd.
folt3k
Wiem że jak posłużę się bazą danych to wynik takiej operacji będzie trwały, ale jeszcze nie jestem na tym etapie. Zależy mi na tym aby wartość zmiennej 'stock' była zapamiętana w sesji po zmniejszeniu jej poprzez zmienną 'ilosc' smile.gif

Chce się na razie po prostu zapoznać z działaniem sesji i spróbować ją zastosować we własnym przykładzie.
timon27
"jeszcze nie jestem na tym etapie."

Patrząc na kod który już zrobiłeś, gwarantuję ci że w 0,5h nauczysz się podstaw do m.in. zapisania/zaktualizowania wyniku w bazie.

Zauktualizowanie wyniku to 1 (!) linijka.

  1. mysql_query("UPDATE stany SET ilosc=$s WHERE indeks=$indeks");


Oczywiście wcześniej połączenie z bazą - cała 1 linijka....

  1. mysql_connect('localhost', 'uzytkownik', 'haslo')
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.