Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]MCV - nie mgoe wejsc do obiektu
dolar
post
Post #1





Grupa: Zarejestrowani
Postów: 92
Pomógł: 0
Dołączył: 19.10.2016

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


Witajcie, zabralam sie za pierwszy Framework i robie na nim sklep z koszykiem.
http://fuelphp.com/docs/general/models.html
Utknelam na moemncie, gdzie sprwadzam czy dany produkt zostal juz dodany do koszyka czy nie - jesli tak to zwiekszyc powinno jego ilosc, a jesli nie to dodac nowy produkt do koszyka - i tutaj mam problem, bo nie potrafie tego zrobic...

mam taki oto kod :

Tutaj jest moj MODEL :

  1. class Koszyk extends \Model
  2. {
  3.  
  4. private static $instance;
  5.  
  6. public static function getInstance()
  7. {
  8.  
  9. if (!self::$instance) {
  10. self::$instance = new Koszyk();
  11. }
  12. return self::$instance;
  13.  
  14. }
  15.  
  16. private function __clone()
  17. {
  18.  
  19. }
  20.  
  21. private function __construct()
  22. {
  23. $koszyk = Session::get('koszyk');
  24. if ($koszyk == null) {
  25. Session::set('koszyk', array());
  26. }
  27. }
  28.  
  29.  
  30. function dodaj($idProduktu)
  31. {
  32.  
  33. $znaleziono = false;
  34.  
  35. $wybranyProdukt = Produkt::find_by_pk($idProduktu);
  36. $koszyk = Session::get('koszyk');
  37.  
  38. foreach ($koszyk as $klucz => $produkt) {
  39.  
  40. if ($produkt['id'] == $wybranyProdukt['id']) {
  41. $znaleziono = true;
  42. $koszyk[$klucz]['ilosc']++; --> TUTAJ KRZYCZY ZE BLAD, prawdopodobnie ze $klucz jest obiektem, ale nie wiem jak tam wejsc :/
  43. }
  44. }
  45.  
  46. if ($znaleziono == false) {
  47. $koszyk[] = $wybranyProdukt;
  48. Session::set('koszyk', $koszyk);
  49. }



A tak wyglada moj koszyk przy var_dump :

  1.  
  2. array(2) {
  3. [0]=>
  4. object(Model\Produkt)#26 (5) {
  5. ["_data":protected]=>
  6. array(8) {
  7. ["id"]=>
  8. string(1) "1"
  9. ["kategoria"]=>
  10. string(6) "Bluzki"
  11. ["nazwa"]=>
  12. string(6) "Tunika"
  13. ["rozmiar"]=>
  14. string(2) "40"
  15. ["cena"]=>
  16. string(4) "19.9"
  17. ["ilosc"]=>
  18. string(1) "1"
  19. ["_is_new"]=>
  20. bool(true)
  21. ["_is_frozen"]=>
  22. bool(false)
  23. }
  24. ["_is_new":protected]=>
  25. bool(true)
  26. ["_is_frozen":protected]=>
  27. bool(false)
  28. ["_sanitization_enabled":protected]=>
  29. bool(false)
  30. ["_validation":protected]=>
  31. NULL
  32. }
  33. [1]=>
  34. object(Model\Produkt)#32 (5) {
  35. ["_data":protected]=>
  36. array(6) {
  37. ["id"]=>
  38. string(1) "8"
  39. ["kategoria"]=>
  40. string(4) "Buty"
  41. ["nazwa"]=>
  42. string(6) "Kozaki"
  43. ["rozmiar"]=>
  44. string(2) "42"
  45. ["cena"]=>
  46. string(5) "139.9"
  47. ["ilosc"]=>
  48. string(1) "1"
  49. }
  50. ["_is_new":protected]=>
  51. bool(false)
  52. ["_is_frozen":protected]=>
  53. bool(false)
  54. ["_sanitization_enabled":protected]=>
  55. bool(false)
  56. ["_validation":protected]=>
  57. NULL
  58. }
  59. }
  60.  
  61.  



Co robie zle??
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: 23.08.2025 - 15:59